Loading mod_ssl.h +4 −2 Changes for mod_ssl.h: 4 added lines, 2 removed lines. Original line number Diff line number Diff line Loading @@ -743,9 +743,11 @@ char *ssl_util_vhostid(apr_pool_t *, server_rec *); void ssl_util_strupper(char *); void ssl_util_uuencode(char *, const char *, BOOL); void ssl_util_uuencode_binary(unsigned char *, const unsigned char *, int, BOOL); apr_file_t *ssl_util_ppopen(server_rec *, apr_pool_t *, char *); apr_file_t *ssl_util_ppopen(server_rec *, apr_pool_t *, const char *, const char * const *); void ssl_util_ppclose(server_rec *, apr_pool_t *, apr_file_t *); char *ssl_util_readfilter(server_rec *, apr_pool_t *, char *); char *ssl_util_readfilter(server_rec *, apr_pool_t *, const char *, const char * const *); BOOL ssl_util_path_check(ssl_pathcheck_t, const char *, apr_pool_t *); ssl_algo_t ssl_util_algotypeof(X509 *, EVP_PKEY *); char *ssl_util_algotypestr(ssl_algo_t); Loading ssl_engine_pphrase.c +9 −7 Changes for ssl_engine_pphrase.c: 9 added lines, 7 removed lines. Original line number Diff line number Diff line Loading @@ -533,18 +533,20 @@ int ssl_pphrase_Handle_CB(char *buf, int bufsize, int verify, void *srv) * Filter program */ else if (sc->nPassPhraseDialogType == SSL_PPTYPE_FILTER) { char *cmd; const char *cmd = sc->szPassPhraseDialogPath; const char **argv = apr_palloc(p, sizeof(char *) * 4); char *result; ssl_log(s, SSL_LOG_INFO, "Init: Requesting pass phrase from dialog filter program (%s)", sc->szPassPhraseDialogPath); cmd); if (ap_strchr_c(sc->szPassPhraseDialogPath, ' ') != NULL) cmd = apr_psprintf(p, "\"%s\" %s %s", sc->szPassPhraseDialogPath, cpVHostID, cpAlgoType); else cmd = apr_psprintf(p, "%s %s %s", sc->szPassPhraseDialogPath, cpVHostID, cpAlgoType); result = ssl_util_readfilter(s, p, cmd); argv[0] = cmd; argv[1] = cpVHostID; argv[2] = cpAlgoType; argv[3] = NULL; result = ssl_util_readfilter(s, p, cmd, argv); apr_cpystrn(buf, result, bufsize); len = strlen(buf); } Loading ssl_util.c +8 −5 Changes for ssl_util.c: 8 added lines, 5 removed lines. Original line number Diff line number Diff line Loading @@ -139,7 +139,8 @@ void ssl_util_uuencode_binary(unsigned char *szTo, return; } apr_file_t *ssl_util_ppopen(server_rec *s, apr_pool_t *p, char *cmd) apr_file_t *ssl_util_ppopen(server_rec *s, apr_pool_t *p, const char *cmd, const char * const *argv) { apr_procattr_t *procattr; apr_proc_t *proc; Loading @@ -156,7 +157,7 @@ apr_file_t *ssl_util_ppopen(server_rec *s, apr_pool_t *p, char *cmd) return NULL; if ((proc = (apr_proc_t *)apr_pcalloc(p, sizeof(apr_proc_t))) == NULL) return NULL; if (apr_proc_create(proc, cmd, NULL, NULL, procattr, p) != APR_SUCCESS) if (apr_proc_create(proc, cmd, argv, NULL, procattr, p) != APR_SUCCESS) return NULL; return proc->out; } Loading @@ -170,16 +171,18 @@ void ssl_util_ppclose(server_rec *s, apr_pool_t *p, apr_file_t *fp) /* * Run a filter program and read the first line of its stdout output */ char *ssl_util_readfilter(server_rec *s, apr_pool_t *p, char *cmd) char *ssl_util_readfilter(server_rec *s, apr_pool_t *p, const char *cmd, const char * const *argv) { static char buf[MAX_STRING_LEN]; apr_file_t *fp; apr_size_t nbytes; apr_size_t nbytes = 1; char c; int k; if ((fp = ssl_util_ppopen(s, p, cmd)) == NULL) if ((fp = ssl_util_ppopen(s, p, cmd, argv)) == NULL) return NULL; /* XXX: we are reading 1 byte at a time here */ for (k = 0; apr_file_read(fp, &c, &nbytes) == APR_SUCCESS && nbytes == 1 && (k < MAX_STRING_LEN-1) ; ) { if (c == '\n' || c == '\r') Loading Loading
mod_ssl.h +4 −2 Changes for mod_ssl.h: 4 added lines, 2 removed lines. Original line number Diff line number Diff line Loading @@ -743,9 +743,11 @@ char *ssl_util_vhostid(apr_pool_t *, server_rec *); void ssl_util_strupper(char *); void ssl_util_uuencode(char *, const char *, BOOL); void ssl_util_uuencode_binary(unsigned char *, const unsigned char *, int, BOOL); apr_file_t *ssl_util_ppopen(server_rec *, apr_pool_t *, char *); apr_file_t *ssl_util_ppopen(server_rec *, apr_pool_t *, const char *, const char * const *); void ssl_util_ppclose(server_rec *, apr_pool_t *, apr_file_t *); char *ssl_util_readfilter(server_rec *, apr_pool_t *, char *); char *ssl_util_readfilter(server_rec *, apr_pool_t *, const char *, const char * const *); BOOL ssl_util_path_check(ssl_pathcheck_t, const char *, apr_pool_t *); ssl_algo_t ssl_util_algotypeof(X509 *, EVP_PKEY *); char *ssl_util_algotypestr(ssl_algo_t); Loading
ssl_engine_pphrase.c +9 −7 Changes for ssl_engine_pphrase.c: 9 added lines, 7 removed lines. Original line number Diff line number Diff line Loading @@ -533,18 +533,20 @@ int ssl_pphrase_Handle_CB(char *buf, int bufsize, int verify, void *srv) * Filter program */ else if (sc->nPassPhraseDialogType == SSL_PPTYPE_FILTER) { char *cmd; const char *cmd = sc->szPassPhraseDialogPath; const char **argv = apr_palloc(p, sizeof(char *) * 4); char *result; ssl_log(s, SSL_LOG_INFO, "Init: Requesting pass phrase from dialog filter program (%s)", sc->szPassPhraseDialogPath); cmd); if (ap_strchr_c(sc->szPassPhraseDialogPath, ' ') != NULL) cmd = apr_psprintf(p, "\"%s\" %s %s", sc->szPassPhraseDialogPath, cpVHostID, cpAlgoType); else cmd = apr_psprintf(p, "%s %s %s", sc->szPassPhraseDialogPath, cpVHostID, cpAlgoType); result = ssl_util_readfilter(s, p, cmd); argv[0] = cmd; argv[1] = cpVHostID; argv[2] = cpAlgoType; argv[3] = NULL; result = ssl_util_readfilter(s, p, cmd, argv); apr_cpystrn(buf, result, bufsize); len = strlen(buf); } Loading
ssl_util.c +8 −5 Changes for ssl_util.c: 8 added lines, 5 removed lines. Original line number Diff line number Diff line Loading @@ -139,7 +139,8 @@ void ssl_util_uuencode_binary(unsigned char *szTo, return; } apr_file_t *ssl_util_ppopen(server_rec *s, apr_pool_t *p, char *cmd) apr_file_t *ssl_util_ppopen(server_rec *s, apr_pool_t *p, const char *cmd, const char * const *argv) { apr_procattr_t *procattr; apr_proc_t *proc; Loading @@ -156,7 +157,7 @@ apr_file_t *ssl_util_ppopen(server_rec *s, apr_pool_t *p, char *cmd) return NULL; if ((proc = (apr_proc_t *)apr_pcalloc(p, sizeof(apr_proc_t))) == NULL) return NULL; if (apr_proc_create(proc, cmd, NULL, NULL, procattr, p) != APR_SUCCESS) if (apr_proc_create(proc, cmd, argv, NULL, procattr, p) != APR_SUCCESS) return NULL; return proc->out; } Loading @@ -170,16 +171,18 @@ void ssl_util_ppclose(server_rec *s, apr_pool_t *p, apr_file_t *fp) /* * Run a filter program and read the first line of its stdout output */ char *ssl_util_readfilter(server_rec *s, apr_pool_t *p, char *cmd) char *ssl_util_readfilter(server_rec *s, apr_pool_t *p, const char *cmd, const char * const *argv) { static char buf[MAX_STRING_LEN]; apr_file_t *fp; apr_size_t nbytes; apr_size_t nbytes = 1; char c; int k; if ((fp = ssl_util_ppopen(s, p, cmd)) == NULL) if ((fp = ssl_util_ppopen(s, p, cmd, argv)) == NULL) return NULL; /* XXX: we are reading 1 byte at a time here */ for (k = 0; apr_file_read(fp, &c, &nbytes) == APR_SUCCESS && nbytes == 1 && (k < MAX_STRING_LEN-1) ; ) { if (c == '\n' || c == '\r') Loading