130 lines
3.5 KiB
Text
130 lines
3.5 KiB
Text
$NetBSD: patch-ag,v 1.5 2005/09/28 18:22:11 rillig Exp $
|
|
|
|
- Don't abuse an int as a pointer (optarg).
|
|
- Consistently provide lowercase and MixedCase options.
|
|
|
|
--- server/setup.c.orig Mon Mar 23 11:48:02 1998
|
|
+++ server/setup.c Wed Sep 28 20:06:34 2005
|
|
@@ -139,10 +139,13 @@ u_char *src, *dst;
|
|
|
|
|
|
|
|
-static u_char *get_str(p, dst)
|
|
+static u_char *get_str(p, pv_dst)
|
|
u_char *p;
|
|
-char **dst;
|
|
+void *pv_dst;
|
|
{
|
|
+ char **dst;
|
|
+
|
|
+ dst = pv_dst;
|
|
if (!*dst) {
|
|
*dst = malloc(strlen((char *)p) + 1);
|
|
if (!*dst) RcError("no more memory");
|
|
@@ -151,21 +154,26 @@ char **dst;
|
|
while (*p++) ;
|
|
return p;
|
|
}
|
|
-static u_char *get_int(p, dst)
|
|
+static u_char *get_int(p, pv_dst)
|
|
u_char *p;
|
|
-int *dst;
|
|
+void *pv_dst;
|
|
{
|
|
register char *fmt;
|
|
+ int *dst;
|
|
|
|
+ dst = pv_dst;
|
|
fmt = (*p == '0') ? "%o" : "%d";
|
|
if (sscanf((char *)p, fmt, dst) != 1) RcError("bad integer");
|
|
while (*p++) ;
|
|
return p;
|
|
}
|
|
-static u_char *get_flag(p, dst)
|
|
+static u_char *get_flag(p, pv_dst)
|
|
u_char *p;
|
|
-int *dst;
|
|
+void *pv_dst;
|
|
{
|
|
+ int *dst;
|
|
+
|
|
+ dst = pv_dst;
|
|
if (sscanf((char *)p, "%d", dst) == 1)
|
|
;
|
|
else if (!cmpstr("on", p))
|
|
@@ -219,33 +227,56 @@ StrList **dst;
|
|
struct optlist {
|
|
char *optname;
|
|
u_char *(*optfunc)();
|
|
- int optarg;
|
|
+ void *optarg;
|
|
} option[] = {
|
|
- "DebugOut", get_str, (int)&debug_file,
|
|
- "DebugLevel", get_int, (int)&debug_level,
|
|
- "ForkFlag", get_flag, (int)&fork_flag,
|
|
+/*
|
|
+ * Add option flag.
|
|
+ * Because They are lacked in here. See document.
|
|
+ * Patched by Hidekazu Kuroki(hidekazu@cs.titech.ac.jp) 1996/8/10
|
|
+ */
|
|
+ "DebugOut", get_str, &debug_file,
|
|
+ "debugout", get_str, &debug_file,
|
|
+ "DebugLevel", get_int, &debug_level,
|
|
+ "debuglevel", get_int, &debug_level,
|
|
+ "ForkFlag", get_flag, &fork_flag,
|
|
+ "forkflag", get_flag, &fork_flag,
|
|
|
|
- "PortName", get_str, (int)&port_name,
|
|
+ "PortName", get_str, &port_name,
|
|
+ "portname", get_str, &port_name,
|
|
#ifdef TLI
|
|
- "PortNumber", get_str, (int)&port_number,
|
|
- "ProtoName", get_str, (int)&proto_name,
|
|
+ "PortNumber", get_str, &port_number,
|
|
+ "portnumber", get_str, &port_number,
|
|
+ "ProtoName", get_str, &proto_name,
|
|
+ "protoname", get_str, &proto_name,
|
|
#else
|
|
- "PortNumber", get_int, (int)&port_number,
|
|
+ "PortNumber", get_int, &port_number,
|
|
+ "portnumber", get_int, &port_number,
|
|
#endif
|
|
- "SocketName", get_str, (int)&socket_name,
|
|
+ "SocketName", get_str, &socket_name,
|
|
+ "socketname", get_str, &socket_name,
|
|
#ifdef LOCK_FILE
|
|
- "LockFile", get_str, (int)&lock_file;
|
|
+ "LockFile", get_str, &lock_file;
|
|
+ "lockfile", get_str, &lock_file;
|
|
#endif
|
|
|
|
- "maxclient", get_int, (int)&max_client,
|
|
- "dictdir", get_str, (int)&dict_dir,
|
|
- "readdict", get_list, (int)&read_dict,
|
|
- "opendict", get_list, (int)&open_dict,
|
|
- "errorout", get_str, (int)&error_file,
|
|
- "logout", get_str, (int)&log_file,
|
|
- "dirmode", get_int, (int)&dir_mode,
|
|
- "filemode", get_int, (int)&file_mode,
|
|
- "allowuser", get_list, (int)&allow_user,
|
|
+ "MaxClient", get_int, &max_client,
|
|
+ "maxclient", get_int, &max_client,
|
|
+ "DictDir", get_str, &dict_dir,
|
|
+ "dictdir", get_str, &dict_dir,
|
|
+ "ReadDict", get_list, &read_dict,
|
|
+ "readdict", get_list, &read_dict,
|
|
+ "OpenDict", get_list, &open_dict,
|
|
+ "opendict", get_list, &open_dict,
|
|
+ "ErrorOut", get_str, &error_file,
|
|
+ "errorout", get_str, &error_file,
|
|
+ "LogOut", get_str, &log_file,
|
|
+ "logout", get_str, &log_file,
|
|
+ "DirMode", get_int, &dir_mode,
|
|
+ "dirmode", get_int, &dir_mode,
|
|
+ "FileMode", get_int, &file_mode,
|
|
+ "filemode", get_int, &file_mode,
|
|
+ "AllowUser", get_list, &allow_user,
|
|
+ "allowuser", get_list, &allow_user,
|
|
0, 0, 0
|
|
};
|
|
|