浏览代码

Applied patch for apache headers from Inoussa OUEDRAOGO

git-svn-id: trunk@9027 -
sekelsenmat 18 年之前
父节点
当前提交
6a3ecebe6c
共有 2 个文件被更改,包括 41 次插入18 次删除
  1. 20 9
      packages/base/httpd/httpd-2.0/http_config.inc
  2. 21 9
      packages/base/httpd/httpd-2.2/http_config.inc

+ 20 - 9
packages/base/httpd/httpd-2.0/http_config.inc

@@ -119,22 +119,32 @@ type
  * All the types of functions that can be used in directives
  * All the types of functions that can be used in directives
  * @internal
  * @internal
  }
  }
-  cmd_func = function(cmd: Pcmd_parms; mconfig: Pointer): PChar; cdecl;
-  Pcmd_func = ^cmd_func;
 
 
   { function to call for a no-args }
   { function to call for a no-args }
-  no_args_t = function (parms: Pcmd_parms; mconfig: Pointer): PChar;
+  no_args_t = function (parms: Pcmd_parms; mconfig: Pointer): PChar; cdecl;
   { function to call for a raw-args }
   { function to call for a raw-args }
-  raw_args_t = function (parms: Pcmd_parms; mconfig: Pointer; const args: PChar): Pchar;
+  raw_args_t = function (parms: Pcmd_parms; mconfig: Pointer; const args: PChar): Pchar; cdecl;
   { function to call for a take1 }
   { function to call for a take1 }
-  take1_t = function (parms: Pcmd_parms; mconfig: Pointer; const w: PChar): PChar;
+  take1_t = function (parms: Pcmd_parms; mconfig: Pointer; const w: PChar): PChar; cdecl;
   { function to call for a take2 }
   { function to call for a take2 }
-  take2_t = function (parms: Pcmd_parms; mconfig: Pointer; const w, w2: PChar): PChar;
+  take2_t = function (parms: Pcmd_parms; mconfig: Pointer; const w, w2: PChar): PChar; cdecl;
   { function to call for a take3 }
   { function to call for a take3 }
-  take3_t = function (parms: Pcmd_parms; mconfig: Pointer; const w, w2, w3: PChar): PChar;
+  take3_t = function (parms: Pcmd_parms; mconfig: Pointer; const w, w2, w3: PChar): PChar; cdecl;
   { function to call for a flag }
   { function to call for a flag }
-  flag_t = function (parms: Pcmd_parms; mconfig: Pointer; on_: Integer): PChar;
-
+  flag_t = function (parms: Pcmd_parms; mconfig: Pointer; on_: Integer): PChar; cdecl;
+
+  cmd_func_kind = ( cfk_no_args, cfk_raw_args, cfk_take1, cfk_take2, cfk_take3, cfk_flag);
+  cmd_func = record
+    case cmd_func_kind of
+      cfk_no_args   : ( func_no_args : no_args_t );
+      cfk_raw_args  : ( func_raw_args : raw_args_t );
+      cfk_take1     : ( func_take1 : take1_t);
+      cfk_take2     : ( func_take2 : take2_t);
+      cfk_take3     : ( func_take3 : take3_t);
+      cfk_flag      : ( func_flag : flag_t);
+  end;
+  Pcmd_func = ^cmd_func; 
+  
 //const
 //const
   { This configuration directive does not take any arguments }
   { This configuration directive does not take any arguments }
 //  AP_NO_ARGS =	func.no_args;
 //  AP_NO_ARGS =	func.no_args;
@@ -1158,3 +1168,4 @@ procedure ap_hook_optional_fn_retrieve(pf: ap_HOOK_optional_fn_retrieve_t;
  {$IFDEF WINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF}
  {$IFDEF WINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF}
  external LibHTTPD name LibNamePrefix + 'ap_hook_optional_fn_retrieve' + LibSuff16;
  external LibHTTPD name LibNamePrefix + 'ap_hook_optional_fn_retrieve' + LibSuff16;
 
 
+

+ 21 - 9
packages/base/httpd/httpd-2.2/http_config.inc

@@ -123,23 +123,34 @@ type
  * All the types of functions that can be used in directives
  * All the types of functions that can be used in directives
  * @internal
  * @internal
  }
  }
-  cmd_func = function(cmd: Pcmd_parms; mconfig: Pointer): PChar; cdecl;
-  Pcmd_func = ^cmd_func;
 
 
   { function to call for a no-args }
   { function to call for a no-args }
-  no_args_t = function (parms: Pcmd_parms; mconfig: Pointer): PChar;
+  no_args_t = function (parms: Pcmd_parms; mconfig: Pointer): PChar; cdecl;
   { function to call for a raw-args }
   { function to call for a raw-args }
-  raw_args_t = function (parms: Pcmd_parms; mconfig: Pointer; const args: PChar): PChar;
+  raw_args_t = function (parms: Pcmd_parms; mconfig: Pointer; const args: PChar): PChar; cdecl;
   { function to call for a argv/argc }
   { function to call for a argv/argc }
-  take_argv_t = function (parms: Pcmd_parms; mconfig: Pointer; argc: cint; argv: array of PChar): PChar;
+  take_argv_t = function (parms: Pcmd_parms; mconfig: Pointer; argc: cint; argv: array of PChar): PChar; cdecl;
   { function to call for a take1 }
   { function to call for a take1 }
-  take1_t = function (parms: Pcmd_parms; mconfig: Pointer; const w: PChar): PChar;
+  take1_t = function (parms: Pcmd_parms; mconfig: Pointer; const w: PChar): PChar; cdecl;
   { function to call for a take2 }
   { function to call for a take2 }
-  take2_t = function (parms: Pcmd_parms; mconfig: Pointer; const w, w2: PChar): PChar;
+  take2_t = function (parms: Pcmd_parms; mconfig: Pointer; const w, w2: PChar): PChar; cdecl;
   { function to call for a take3 }
   { function to call for a take3 }
-  take3_t = function (parms: Pcmd_parms; mconfig: Pointer; const w, w2, w3: PChar): PChar;
+  take3_t = function (parms: Pcmd_parms; mconfig: Pointer; const w, w2, w3: PChar): PChar;  cdecl;
   { function to call for a flag }
   { function to call for a flag }
-  flag_t = function (parms: Pcmd_parms; mconfig: Pointer; on_: Integer): PChar;
+  flag_t = function (parms: Pcmd_parms; mconfig: Pointer; on_: Integer): PChar; cdecl;
+
+  cmd_func_kind = ( cfk_no_args, cfk_raw_args, cfk_take_argv, cfk_take1, cfk_take2, cfk_take3, cfk_flag);
+  cmd_func = record
+    case cmd_func_kind of
+      cfk_no_args   : ( func_no_args : no_args_t );
+      cfk_raw_args  : ( func_raw_args : raw_args_t );
+      cfk_take_argv : ( func_take_argv : take_argv_t);
+      cfk_take1     : ( func_take1 : take1_t);
+      cfk_take2     : ( func_take2 : take2_t);
+      cfk_take3     : ( func_take3 : take3_t);
+      cfk_flag      : ( func_flag : flag_t);
+  end;
+  Pcmd_func = ^cmd_func;
 
 
 //const
 //const
   { This configuration directive does not take any arguments }
   { This configuration directive does not take any arguments }
@@ -1192,3 +1203,4 @@ procedure ap_hook_optional_fn_retrieve(pf: ap_HOOK_optional_fn_retrieve_t;
  {$IFDEF WINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF}
  {$IFDEF WINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF}
  external LibHTTPD name LibNamePrefix + 'ap_hook_optional_fn_retrieve' + LibSuff16;
  external LibHTTPD name LibNamePrefix + 'ap_hook_optional_fn_retrieve' + LibSuff16;
 
 
+