12345678910111213141516171819202122232425262728293031323334353637383940414243 |
- --- davfs2-1.4.7.orig/src/webdav.c 2012-07-19 13:27:51.000000000 +0200
- +++ davfs2-1.4.7/src/webdav.c 2014-01-01 20:14:54.000000000 +0100
- @@ -21,7 +21,6 @@
- #include "config.h"
-
- #include <errno.h>
- -#include <error.h>
- #ifdef HAVE_FCNTL_H
- #include <fcntl.h>
- #endif
- @@ -52,6 +51,8 @@
- #include <sys/stat.h>
- #endif
-
- +#include <regex.h>
- +
- #include <ne_alloc.h>
- #include <ne_auth.h>
- #include <ne_basic.h>
- @@ -1921,6 +1922,7 @@ quota_result(void *userdata, const ne_ur
- static int
- ssl_verify(void *userdata, int failures, const ne_ssl_certificate *cert)
- {
- + regex_t *re;
- char *issuer = ne_ssl_readable_dname(ne_ssl_cert_issuer(cert));
- char *subject = ne_ssl_readable_dname(ne_ssl_cert_subject(cert));
- char *digest = ne_calloc(NE_SSL_DIGESTLEN);
- @@ -1967,8 +1969,13 @@ ssl_verify(void *userdata, int failures,
- len = getline(&s, &n, stdin);
- if (len < 0)
- abort();
- - if (rpmatch(s) > 0)
- - ret = 0;
- + if (regcomp(&re, "^[yY]", REG_EXTENDED) != 0) {
- + if (regexec(&re, s, (size_t)0, NULL, 0) < 1) {
- + regfree(&re);
- + ret = -1;
- + }
- + ret = 0;
- + }
- free(s);
- }
-
|