From: Harlan Stenn Date: Fri, 7 Jan 2011 04:06:38 +0000 (-0500) Subject: If the subject-name begins with @, prefix it with the certname X-Git-Tag: NTP_4_2_7P113~4^2 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=18b86a3ece916084efc058804b30f93304612d88;p=thirdparty%2Fntp.git If the subject-name begins with @, prefix it with the certname bk: 4d26914eGB1S7o2N74yy0tfy1Ng6GA --- diff --git a/util/ntp-keygen.c b/util/ntp-keygen.c index 6375ce01c..35fba58bf 100644 --- a/util/ntp-keygen.c +++ b/util/ntp-keygen.c @@ -238,6 +238,7 @@ main( EVP_PKEY *pkey = NULL; /* temp key */ const EVP_MD *ectx; /* EVP digest */ char pathbuf[MAXFILENAME + 1]; + char str[MAXFILENAME + 1]; const char *scheme = NULL; /* digest/signature scheme */ char *exten = NULL; /* private extension */ char *grpkey = NULL; /* identity extension */ @@ -325,8 +326,15 @@ main( if (HAVE_OPT( CERTIFICATE )) scheme = OPT_ARG( CERTIFICATE ); - if (HAVE_OPT( SUBJECT_NAME )) - certname = strdup(OPT_ARG( SUBJECT_NAME )); + if (HAVE_OPT( SUBJECT_NAME )) { + if (*OPT_ARG(SUBJECT_NAME) != '@') { + certname = strdup(OPT_ARG(SUBJECT_NAME)); + } else { + strcpy(str, certname); + strcat(str, OPT_ARG(SUBJECT_NAME)); + certname = strdup(str); + } + } if (HAVE_OPT( ISSUER_NAME )) groupname = strdup(OPT_ARG( ISSUER_NAME ));