Current 2.3 under Solaris 7/x86 ...

Katsuhiro Kondou kondou at nec.co.jp
Tue Jun 13 15:29:15 UTC 2000


In article <20000613234535O.kondou at inn.do.mms.mt.nec.co.jp>,
	Katsuhiro Kondou <kondou at nec.co.jp> wrote;

} Ok, I think nnrpperlauth or nnrppythonauth is enabled in your
} inn.conf, and the problem happens.  I'll fix it anyway.  Tell
} me if those parameters are false.

Try attached.  That should fix.
-- 
Katsuhiro Kondou

--- nnrpd/nnrpd.c.orig	Mon Jun 12 10:27:12 2000
+++ nnrpd/nnrpd.c	Wed Jun 14 00:25:30 2000
@@ -413,6 +413,7 @@
     char		*ClientAddr;
     char		accesslist[BIG_BUFFER];
     int                 code;
+    static ACCESSGROUP	*authconf;
 
     /* Get the peer's name. */
     length = sizeof sin;
@@ -489,6 +490,10 @@
 	}
 	NGgetlist(&PERMreadlist, accesslist);
 	PERMpostlist = PERMreadlist;
+	if (!authconf)
+	    authconf = NEW(ACCESSGROUP, 1);
+	PERMaccessconf = authconf;
+	SetDefaultAccess(PERMaccessconf);
     } else {
 #endif	/* DO_PERL */
 
@@ -506,6 +511,10 @@
 	    PERMspecified = NGgetlist(&PERMreadlist, accesslist);
 	    PERMpostlist = PERMreadlist;
 	}
+	if (!authconf)
+	    authconf = NEW(ACCESSGROUP, 1);
+	PERMaccessconf = authconf;
+	SetDefaultAccess(PERMaccessconf);
     } else {
 #endif	/* DO_PYTHON */
 	PERMgetaccess();
--- nnrpd/nnrpd.h.orig	Mon Jun 12 10:27:12 2000
+++ nnrpd/nnrpd.h	Wed Jun 14 00:06:32 2000
@@ -203,6 +203,7 @@
 extern BOOL		ParseDistlist();
 extern READTYPE		READline();
 extern char		*OVERGetHeader(char *p, int field);
+extern void SetDefaultAccess(ACCESSGROUP*);
 
 #if defined(STDC_HEADERS) || defined(HAVE_STDARG_H)
 extern void             Reply(const char *fmt, ...);
--- nnrpd/perm.c.orig	Wed Jun 14 00:06:58 2000
+++ nnrpd/perm.c	Wed Jun 14 00:05:34 2000
@@ -85,7 +85,6 @@
 static METHOD *copy_method(METHOD*);
 static void free_method(METHOD*);
 static AUTHGROUP *copy_authgroup(AUTHGROUP*);
-static void setdefaultaccess(ACCESSGROUP*);
 static void free_authgroup(AUTHGROUP*);
 static ACCESSGROUP *copy_accessgroup(ACCESSGROUP*);
 static void free_accessgroup(ACCESSGROUP*);
@@ -403,7 +402,7 @@
     return(ret);
 }
 
-static void setdefaultaccess(ACCESSGROUP *curaccess)
+void SetDefaultAccess(ACCESSGROUP *curaccess)
 {
     curaccess->localtime = FALSE;
     curaccess->strippath = FALSE;
@@ -1025,7 +1024,7 @@
 			curaccess = NEW(ACCESSGROUP, 1);
 			memset((POINTER) curaccess, 0, sizeof(ACCESSGROUP));
 			memset(ConfigBit, '\0', ConfigBitsize);
-			setdefaultaccess(curaccess);
+			SetDefaultAccess(curaccess);
 		    }
 		    curaccess->name = str;
 		    inwhat = 2;
@@ -1118,7 +1117,7 @@
 		    (void)memset((POINTER)curgroup->access, 0,
 		      sizeof(ACCESSGROUP));
 		    memset(ConfigBit, '\0', ConfigBitsize);
-		    setdefaultaccess(curgroup->access);
+		    SetDefaultAccess(curgroup->access);
 		}
 		accessdecl_parse(curgroup->access, cf->f, tok);
 		break;



More information about the inn-workers mailing list