dgaudet 97/07/26 18:56:04
Modified: src http_config.c
Log:
Properly cast the ->func parm of command_rec before calling it. This is to
improve portability.
Revision Changes Path
1.66 +30 -12 apache/src/http_config.c
Index: http_config.c
===================================================================
RCS file: /export/home/cvs/apache/src/http_config.c,v
retrieving revision 1.65
retrieving revision 1.66
diff -u -r1.65 -r1.66
--- http_config.c 1997/07/24 04:38:08 1.65
+++ http_config.c 1997/07/27 01:56:03 1.66
@@ -569,14 +569,16 @@
switch (cmd->args_how) {
case RAW_ARGS:
- return (*cmd->func) (parms, mconfig, args);
+ return ((const char * (*)(cmd_parms *, void *, const char *))
+ (*cmd->func)) (parms, mconfig, args);
case NO_ARGS:
if (*args != 0)
return pstrcat (parms->pool, cmd->name, " takes no arguments",
NULL);
- return (*cmd->func) (parms, mconfig);
+ return ((const char * (*)(cmd_parms *, void *))
+ (*cmd->func)) (parms, mconfig);
case TAKE1:
w = getword_conf (parms->pool, &args);
@@ -585,7 +587,8 @@
return pstrcat (parms->pool, cmd->name, " takes one argument",
cmd->errmsg ? ", " : NULL, cmd->errmsg, NULL);
- return (*cmd->func) (parms, mconfig, w);
+ return ((const char * (*)(cmd_parms *, void *, const char *))
+ (*cmd->func)) (parms, mconfig, w);
case TAKE2:
@@ -596,7 +599,8 @@
return pstrcat (parms->pool, cmd->name, " takes two arguments",
cmd->errmsg ? ", " : NULL, cmd->errmsg, NULL);
- return (*cmd->func) (parms, mconfig, w, w2);
+ return ((const char * (*)(cmd_parms *, void *, const char *,
+ const char *))(*cmd->func)) (parms, mconfig, w, w2);
case TAKE12:
@@ -607,7 +611,9 @@
return pstrcat (parms->pool, cmd->name, " takes 1-2 arguments",
cmd->errmsg ? ", " : NULL, cmd->errmsg, NULL);
- return (*cmd->func) (parms, mconfig, w, *w2 ? w2 : NULL);
+ return ((const char * (*)(cmd_parms *, void *, const char *,
+ const char *))(*cmd->func)) (parms, mconfig, w,
+ *w2 ? w2 : NULL);
case TAKE3:
@@ -619,7 +625,9 @@
return pstrcat (parms->pool, cmd->name, " takes three arguments",
cmd->errmsg ? ", " : NULL, cmd->errmsg, NULL);
- return (*cmd->func) (parms, mconfig, w, w2, w3);
+ return ((const char * (*)(cmd_parms *, void *, const char *,
+ const char *, const char *))(*cmd->func)) (parms,
+ mconfig, w, w2, w3);
case TAKE23:
@@ -631,7 +639,9 @@
return pstrcat (parms->pool, cmd->name, " takes two or three
arguments",
cmd->errmsg ? ", " : NULL, cmd->errmsg, NULL);
- return (*cmd->func) (parms, mconfig, w, w2, w3);
+ return ((const char * (*)(cmd_parms *, void *, const char *,
+ const char *, const char *))(*cmd->func)) (parms,
+ mconfig, w, w2, w3);
case TAKE123:
@@ -643,7 +653,9 @@
return pstrcat (parms->pool, cmd->name, " takes one, two or three
arguments",
cmd->errmsg ? ", " : NULL, cmd->errmsg, NULL);
- return (*cmd->func) (parms, mconfig, w, w2, w3);
+ return ((const char * (*)(cmd_parms *, void *, const char *,
+ const char *, const char *))(*cmd->func)) (parms,
+ mconfig, w, w2, w3);
case TAKE13:
@@ -655,12 +667,15 @@
return pstrcat (parms->pool, cmd->name, " takes one or three
arguments",
cmd->errmsg ? ", " : NULL, cmd->errmsg, NULL);
- return (*cmd->func) (parms, mconfig, w, w2, w3);
+ return ((const char * (*)(cmd_parms *, void *, const char *,
+ const char *, const char *))(*cmd->func)) (parms,
+ mconfig, w, w2, w3);
case ITERATE:
while (*(w = getword_conf (parms->pool, &args)) != '\0')
- if ((errmsg = (*cmd->func) (parms, mconfig, w)))
+ if ((errmsg = ((const char * (*)(cmd_parms *, void *,
+ const char *))(*cmd->func)) (parms, mconfig, w)))
return errmsg;
return NULL;
@@ -676,7 +691,9 @@
while (*(w2 = getword_conf (parms->pool, &args)) != '\0')
- if ((errmsg = (*cmd->func) (parms, mconfig, w, w2)))
+ if ((errmsg = ((const char * (*)(cmd_parms *, void *,
+ const char *, const char *))(*cmd->func)) (parms,
+ mconfig, w, w2)))
return errmsg;
return NULL;
@@ -689,7 +706,8 @@
return pstrcat (parms->pool, cmd->name, " must be On or Off",
NULL);
- return (*cmd->func) (parms, mconfig, strcasecmp (w, "off") != 0);
+ return ((const char * (*)(cmd_parms *, void *, int))
+ (*cmd->func)) (parms, mconfig, strcasecmp (w, "off") != 0);
default: