Current 2.3 under Solaris 7/x86 ...

Katsuhiro Kondou kondou at nec.co.jp
Tue Jun 13 21:52:48 UTC 2000


In article <Pine.BSF.4.21.0006131334460.10507-100000 at thelab.hub.org>,
	The Hermit Hacker <scrappy at hub.org> wrote;

} okay, just went through and make sure that my inn.conf was up to date with
} what is in the site directory (just in case I was missing something), and
} still no change ...

How about this time? (patch is diff from CURRENT)
-- 
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 06:49:57 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;
@@ -1327,6 +1326,7 @@
     int i;
     char *cp, **list;
     char *user[2];
+    static ACCESSGROUP *noaccessconf;
 
     if (ConfigBit == NULL) {
 	if (PERMMAX % 8 == 0)
@@ -1416,8 +1416,13 @@
 	    }
 	} else
 	    VirtualPathlen = 0;
-    } else
+    } else {
+	if (!noaccessconf)
+	    noaccessconf = NEW(ACCESSGROUP, 1);
+	PERMaccessconf = noaccessconf;
+	SetDefaultAccess(PERMaccessconf);
 	syslog(L_TRACE, "%s no_access_realm", ClientHost);
+    }
 }
 
 /* strip blanks out of a string */



More information about the inn-workers mailing list