X-Git-Url: http://git.ipfire.org/?p=thirdparty%2Fcups.git;a=blobdiff_plain;f=cups%2Fhttp.c;h=251321d5141a5ebeca2d7d34e6976afe122276d2;hp=7a6f6840851f8baad1c4a9ad97ecd1cdfe02b21a;hb=b94498cfba64422f0f21181b0c51cc0bed7c7d92;hpb=323c5de1e804061e344172cc9a9551bb0ee71005 diff --git a/cups/http.c b/cups/http.c index 7a6f68408..251321d51 100644 --- a/cups/http.c +++ b/cups/http.c @@ -1,5 +1,5 @@ /* - * "$Id: http.c 6285 2007-02-16 01:10:55Z mike $" + * "$Id: http.c 6499 2007-04-30 21:44:43Z mike $" * * HTTP routines for the Common UNIX Printing System (CUPS). * @@ -335,6 +335,11 @@ httpClose(http_t *http) /* I - HTTP connection */ major_status = gss_release_name(&minor_status, &http->gssname); #endif /* HAVE_GSSAPI */ +#ifdef HAVE_AUTHORIZATION_H + if (http->auth_ref) + AuthorizationFree(http->auth_ref, kAuthorizationFlagDefaults); +#endif /* HAVE_AUTHORIZATION_H */ + httpClearFields(http); if (http->authstring && http->authstring != http->_authstring) @@ -2574,10 +2579,12 @@ http_send(http_t *http, /* I - HTTP connection */ httpClearFields(http); /* - * The Kerberos authentication string can only be used once... + * The Kerberos and AuthRef authentication strings can only be used once... */ - if (http->authstring && !strncmp(http->authstring, "Negotiate", 9)) + if (http->authstring && + (!strncmp(http->authstring, "Negotiate", 9) || + !strncmp(http->authstring, "AuthRef", 7))) { http->_authstring[0] = '\0'; @@ -3156,5 +3163,5 @@ http_write_ssl(http_t *http, /* I - HTTP connection */ /* - * End of "$Id: http.c 6285 2007-02-16 01:10:55Z mike $". + * End of "$Id: http.c 6499 2007-04-30 21:44:43Z mike $". */