copy name into buffer, at most sz bytes, if buffer is null will malloc buffer, caller responsible for freeing
| 635 | // copy name into buffer, at most sz bytes, if buffer is null |
| 636 | // will malloc buffer, caller responsible for freeing |
| 637 | char* X509_NAME_oneline(X509_NAME* name, char* buffer, int sz) |
| 638 | { |
| 639 | if (!name->GetName()) return buffer; |
| 640 | |
| 641 | int len = (int)strlen(name->GetName()) + 1; |
| 642 | int copySz = min(len, sz); |
| 643 | |
| 644 | if (!buffer) { |
| 645 | buffer = (char*)malloc(len); |
| 646 | if (!buffer) return buffer; |
| 647 | copySz = len; |
| 648 | } |
| 649 | |
| 650 | if (copySz == 0) |
| 651 | return buffer; |
| 652 | |
| 653 | memcpy(buffer, name->GetName(), copySz - 1); |
| 654 | buffer[copySz - 1] = 0; |
| 655 | |
| 656 | return buffer; |
| 657 | } |
| 658 | |
| 659 | |
| 660 | X509_NAME* X509_get_issuer_name(X509* x) |