--- davfs2-1.4.6.orig/src/webdav.c 2010-02-16 20:29:59.000000000 +0100 +++ davfs2-1.4.6/src/webdav.c 2010-05-30 09:52:01.161613627 +0200 @@ -52,6 +52,8 @@ #include #endif +#include + #include #include #include @@ -1918,6 +1920,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); @@ -1964,8 +1967,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); }