pkgsrc-Bugs archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
pkg/38454: neon+subversion+gssapi doesn't work
>Number: 38454
>Category: pkg
>Synopsis: neon+subversion+gssapi doesn't work
>Confidential: no
>Severity: critical
>Priority: medium
>Responsible: pkg-manager
>State: open
>Class: sw-bug
>Submitter-Id: net
>Arrival-Date: Fri Apr 18 00:30:00 +0000 2008
>Originator: Todd Kover
>Release: NetBSD 4.0
>Organization:
Omniscient Technologies
>Environment:
System: NetBSD slivovice.cz.omniscient.com 4.0 NetBSD 4.0 (GENERIC) #0: Tue Dec
25 17:07:02 EST 2007
kovert%saidin.omniscient.com@localhost:/usr/obj/4.0-stable/i386/omniscient/os/NetBSD-4.0/src/sys/arch/i386/compile/GENERIC
i386
Architecture: i386
Machine: i386
>Description:
When using svn as a client to talk to a server that uses the gssapi
Negotite extension, apache spits backa Multi-status error because
the negotiate dance doesn't work.
Turns out there's some bad pointer math.
>How-To-Repeat:
Setup a subverison repository that uses https+Negotiate and attempt
to do something against the server.
Watch, read, curse.
>Fix:
This patch as patches/patch-aa fixes it:
---<snip>---
$NetBSD$
--- src/ne_auth.c.orig 2008-04-18 01:07:57.000000000 +0200
+++ src/ne_auth.c 2008-04-18 01:08:23.000000000 +0200
@@ -519,7 +519,7 @@
char *sep, *ptr = strchr(duphdr, ' ');
int ret;
- if (strncmp(hdr, "Negotiate", ptr - hdr) != 0) {
+ if (strncmp(hdr, "Negotiate", ptr - duphdr) != 0) {
NE_DEBUG(NE_DBG_HTTPAUTH, "gssapi: Not a Negotiate response!\n");
ne_free(duphdr);
return NE_ERROR;
Home |
Main Index |
Thread Index |
Old Index