mirror of
https://github.com/php/php-src.git
synced 2024-12-02 06:13:40 +08:00
a3bd39429c
This patch properly fixes support for CGI in PHP. For backwards compatible broken behaviour, cgi.fix_pathinfo can be set to zero in php.ini. CGI failed to work under apache at all, either using the cgi-script directive or as a ScriptAlias setup. Typicaly it would try to parse itself. This will still happen if you dissable fix_pathinfo, and set DISCARD_PATH. This also fixes PATH_INFO, and finally we can run pres2 under cgi or fastcgi. This patch has been tested under Apache 1.3, 2.0, IIS, as both cgi and fastcgi, on Windows and OSX. A followup patch with build stuff for linux will follow.
65 lines
1.5 KiB
C
65 lines
1.5 KiB
C
/* Defines and types for Windows 95/NT */
|
|
#define HAVE_DECLARED_TIMEZONE
|
|
#define WIN32_LEAN_AND_MEAN
|
|
#include <io.h>
|
|
#include <malloc.h>
|
|
#include <direct.h>
|
|
#include <stdlib.h>
|
|
#include <stdio.h>
|
|
#include <stdarg.h>
|
|
#include <sys/types.h>
|
|
typedef int uid_t;
|
|
typedef int gid_t;
|
|
typedef char * caddr_t;
|
|
#define lstat(x, y) stat(x, y)
|
|
#define _IFIFO 0010000 /* fifo */
|
|
#define _IFBLK 0060000 /* block special */
|
|
#define _IFLNK 0120000 /* symbolic link */
|
|
#define S_IFIFO _IFIFO
|
|
#define S_IFBLK _IFBLK
|
|
#define S_IFLNK _IFLNK
|
|
#ifndef S_ISREG
|
|
#define S_ISREG(m) (((m) & S_IFMT) == S_IFREG)
|
|
#endif
|
|
#define chdir(path) SetCurrentDirectory(path)
|
|
#define mkdir(a, b) _mkdir(a)
|
|
#define rmdir(a) _rmdir(a)
|
|
#define getpid _getpid
|
|
#define php_sleep(t) Sleep(t*1000)
|
|
#define getcwd(a, b) _getcwd(a, b)
|
|
#define off_t _off_t
|
|
typedef unsigned int uint;
|
|
typedef unsigned long ulong;
|
|
#if !NSAPI
|
|
#define strcasecmp(s1, s2) stricmp(s1, s2)
|
|
#define strncasecmp(s1, s2, n) strnicmp(s1, s2, n)
|
|
typedef long pid_t;
|
|
#endif
|
|
|
|
/* missing in vc5 math.h */
|
|
#define M_PI 3.14159265358979323846
|
|
#define M_TWOPI (M_PI * 2.0)
|
|
#define M_PI_2 1.57079632679489661923
|
|
#ifndef M_PI_4
|
|
#define M_PI_4 0.78539816339744830962
|
|
#endif
|
|
|
|
#if !defined(PHP_DEBUG)
|
|
#ifdef inline
|
|
#undef inline
|
|
#endif
|
|
#define inline __inline
|
|
#endif
|
|
|
|
/* General Windows stuff */
|
|
#define WINDOWS 1
|
|
|
|
/* Prevent use of VC5 OpenFile function */
|
|
#define NOOPENFILE
|
|
|
|
/* sendmail is built-in */
|
|
#ifdef PHP_PROG_SENDMAIL
|
|
#undef PHP_PROG_SENDMAIL
|
|
#define PHP_PROG_SENDMAIL "Built in mailer"
|
|
#endif
|