Commit Graph

183 Commits

Author SHA1 Message Date
Zeev Suraski
15cb7ca021 Fix some warnings 2001-07-31 23:32:24 +00:00
Zeev Suraski
b1de7fc900 More TSRMLS_FETCH annihilation. Enough for today... 2001-07-31 07:09:49 +00:00
Zeev Suraski
bc42c37513 More TSRMLS_FETCH work. Got it under 400 now. 2001-07-31 06:28:05 +00:00
Zeev Suraski
c43806f415 Zend compatibility patch 2001-07-30 08:24:42 +00:00
Zeev Suraski
d87cc976e1 Redesigned thread safety mechanism - nua nua 2001-07-28 11:36:37 +00:00
Zeev Suraski
fe6f8712a4 - Get rid of ELS_*(), and use TSRMLS_*() instead.
- Move to the new ts_allocate_id() API
This patch is *bound* to break some files, as I must have had typos somewhere.
If you use any uncommon extension, please try to build it...
2001-07-27 10:16:41 +00:00
Andi Gutmans
7ce1846761 - Shouldn't be needed anymore 2001-07-21 15:13:19 +00:00
Andi Gutmans
4715403906 - Fix __FILE__ in the main script in CGI/command line mode. 2001-07-21 15:11:30 +00:00
Zeev Suraski
ba1249dc8e Fix the crash Joey found 2001-07-16 13:48:07 +00:00
Zeev Suraski
407fd77c20 Generalize 2001-07-16 13:31:55 +00:00
Zeev Suraski
ab7f5ee038 Fix a crash with the new check-in-cwd code. It will now work only
with files which are included in runtime, and not files which are opened at startup (e.g., php.ini)
2001-07-15 12:24:06 +00:00
James E. Flemer
771e3e498f o Fixed Bug #12121: chdir and safe_mode
- [ main/safe_mode.h ] added new checkuid mode:
    CHECKUID_ALLOW_ONLY_FILE: skips directory check if file check
	fails

  - [ ext/standard/dir.c ] changed php_checkuid() to use
    CHECKUID_ALLOW_ONLY_FILE instead of CHECKUID_ALLOW_ONLY_DIR

  - [ main/safe_mode.c ] added code for new checkuid mode

o Fixed Bug #12119: safe mode owner check can be bypassed with symlink
  - [ main/safe_mode.c ] use VCWD_REALPATH to resolve destination
    of symlink before trimming filename

o New Feature: safe_mode_include_dir (php.ini directive)
  - Allows bypassing UID/GID checks when including files
    from the directory in safe_mode_include_dir and its
	subdirectories. (safe_mode must be on, directory must
	also be in include_path or full path must be used when
	including)

o Fixed Feature: safe_mode_gid (php.ini directive)
  - Correctly check (and report) UID/GID bits on directories

o Changed include() fall back to scripts cwd implementation
  - CWD added to the (local) search path in php_fopen_with_path()
    instead of seperate case. [ main/fopen_wrappers.c ]
2001-07-13 18:21:21 +00:00
Zeev Suraski
66c8b08efa Remove unreferenced variable 2001-07-11 17:10:13 +00:00
Andi Gutmans
2d9c29a31a - Nuke fprintf() 2001-07-10 20:40:56 +00:00
Andi Gutmans
4b54140a35 - Commit patch which checks for an include file in the calling scripts'
current working directory if everything else fails (include_path).
- Right now this also effects things like opening php.ini. It'll now always
  check in the current working directory for php.ini. I think this doesn't
  screw up todays behavior.
2001-07-10 20:38:39 +00:00
Zeev Suraski
fa684c5bd4 Whitespace 2001-07-10 18:49:47 +00:00
Rasmus Lerdorf
81e2cf03ac Fix folding and clean up some extensions 2001-06-06 13:06:12 +00:00
Rasmus Lerdorf
25c3a3a39d vim-6 does folding - clean up a bunch of missing folding tags plus
some misguided RINIT and RSHUTDOWN calls in a few fringe extensions
2001-06-05 13:12:10 +00:00
foobar
726bd849c0 oops.. 2001-05-23 03:40:52 +00:00
foobar
1567b0dfe0 fixed bug: #10960 2001-05-23 00:33:47 +00:00
Andi Gutmans
4c823e8a89 - Change macros from V_ to VCWD_ because of AIX name clash 2001-04-30 12:45:02 +00:00
Stig Bakken
0b2641efa6 @Added -C command-line option to avoid chdir to the script's directory (Stig) 2001-04-16 23:20:47 +00:00
Andi Gutmans
eb6ba01d1c - Fix copyright notices with 2001 2001-02-26 06:11:02 +00:00
Rasmus Lerdorf
83cf6629ec @BeOS patch from svanegmond@bang.dhs.org modified somewhat by Rasmus
BeOS patch from svanegmond@bang.dhs.org modified somewhat by Rasmus
2001-01-21 17:29:15 +00:00
Andi Gutmans
86a1cace27 - Make all places use MAXPATHLEN in the same way. It includes the
terminating NULL.
2000-12-16 20:52:43 +00:00
Andi Gutmans
11e5f9bd44 - This is the correct way of doing it 2000-12-14 23:05:31 +00:00
Hartmut Holzgraefe
38569740da fix for #7756 and #6743 : fatal error on 'include("")' instead of warning
(+ some cleanup)
2000-11-11 10:15:59 +00:00
Andi Gutmans
6da2eaf600 - When mode is specified the flag is a don't care 2000-11-02 23:30:48 +00:00
Andi Gutmans
1956fb48d2 - Missed one of the php_checkuid() places 2000-11-02 23:19:48 +00:00
Andi Gutmans
d0ec3df288 - Use CHECKUID_* #define's instead of cryptic numbers in php_checkuid()
- I did not test for validity of the actual php_checkuid() calls and there
- might be mistakes in the previous code.
2000-11-02 23:08:07 +00:00
Hartmut Holzgraefe
604876542a removed some bogus code 2000-10-31 11:32:05 +00:00
Zeev Suraski
3dc7fc54a0 - URL-opened files now store the HTTP response header in $http_response_header
- Some layout updates
2000-10-28 01:31:56 +00:00
Frank M. Kromann
02537bd2f2 Kill compiler warning. 2000-10-27 16:16:55 +00:00
Sascha Schumann
61cf1f34a5 We don't need to store NUL of the key which simplifies the lookup
significantly.
2000-10-22 14:42:55 +00:00
Joey Smith
a57ea792c6 Close bug #7325. Patches by djm@web.us.uu.net. 2000-10-19 15:05:44 +00:00
Hartmut Holzgraefe
6d5f1d97f8 now it works for me as CGI and APXS, with or without --enable-debug ... 2000-10-13 10:04:17 +00:00
Daniel Beulshausen
6fb51171c8 compile fixes & update of win32 dsp 2000-10-13 09:13:01 +00:00
Hartmut Holzgraefe
cae27179ce fopen wrappers cleanup
- comfiguration is now done by an ini parameter
    instead of a compile time option
  - the implementations of the three standard wrappers
    now live in seperate files in ext/standard
  - the compiler is happy again, no more warnings
2000-10-13 00:09:31 +00:00
Andi Gutmans
e91c188e85 - Fix memory leak. 2000-10-12 19:58:20 +00:00
Andi Gutmans
18f86e7757 - Fix V_CHDIR_FILE() to only chdir() when a directory part is specified.
Use this instead of broken php_dirname() in fopen-wrappers.c
2000-10-03 15:05:50 +00:00
Andi Gutmans
5819b6d4a6 - Remove unneeded IS_SLASH() definition. 2000-10-01 18:13:41 +00:00
Andi Gutmans
e740042363 - Fix doc_root problem. If you need to limit under which directories the
scripts should reside use open_basedir.
2000-09-17 05:52:26 +00:00
Andi Gutmans
0e874a094c - Use IS_ABSOLUTE_PATH() so that this will work correctly under Windows 2000-09-14 20:47:35 +00:00
Stig Venaas
d8a4a9b1dd Added IPv6 support to php_fopen_url_wrap_ftp (EPSV and php_hostconnect()) 2000-09-09 21:29:37 +00:00
Stanislav Malyshev
522aec4443 Never trust snprintf return value 2000-09-08 12:52:05 +00:00
Stig Venaas
24633f5987 renamed hostconnect() to php_hostconnect() 2000-09-05 16:36:56 +00:00
Stig Venaas
b83427db64 using the new hostconnect() for the http wrapper 2000-09-05 15:59:08 +00:00
Andi Gutmans
27de50012b - Use emalloc() for opened_path now. This was a potential leak before.
- This patch has potential to break stuff but I tested it as much as I
- could. Fixes should be easy.
2000-08-31 22:24:20 +00:00
Andi Gutmans
e8e5c9d97e - Remove redundant IS_SLASH
- Reverse config.w32.h patches
- Use IS_ABSOLUTE_PATH() in one place in fopen-wrappers.c
2000-08-31 19:49:36 +00:00
Andi Gutmans
ca5e0330ca - Missed a space 2000-08-30 20:32:29 +00:00
Andi Gutmans
4a2fa70fc9 - Fix bug when using safe_mode and doc_root together 2000-08-30 20:31:17 +00:00
Sascha Schumann
8e0ae5d152 Cleaning up some mess 2000-08-21 09:50:53 +00:00
Andi Gutmans
99d3b9bfe8 - Remove old/deprecated version of expand_filepath 2000-08-21 04:30:25 +00:00
Andi Gutmans
c799959568 - Change PHP_SEPARATOR to PHP_DIR_SEPARATOR 2000-08-20 19:56:24 +00:00
Sascha Schumann
c8b8a908ca Provide PHP_SEPARATOR which expands to the default directory separator
on the target platform.
2000-08-20 14:02:57 +00:00
Sascha Schumann
fbdf502307 Remove php_realpath from build.
It was broken and should not be used in any way.
2000-08-20 05:27:59 +00:00
Andi Gutmans
0c57780b11 - Centralize more fopen-wrappers functionality. 2000-08-18 23:03:49 +00:00
Andi Gutmans
c675a39b73 - The beginning of an attempt to cleanup fopen-wrappers.
- I started with trying to localize the V_FOPEN's so that we can have a
- version which won't really open the file for include_once/require_once to
- work faster and have less chance of a race which would cause a fd leak.
- What I did will, therefore, change but I want to do this step by step
- because the code is extremley messy so first of all I want to make sure
- that the isolating of the V_FOPEN code doesn't break anything.
- How about moving URL stuff out of this file?
- php_fopen_url_wrapper() copy and pasted the second part of
- php_fopen_wrapper() (incorrectly). Please try not to copy&paste code but
- centralize functionality. Need to think of a nice way to nuke one of the
- copies and have both functions use the same one.
2000-08-16 19:26:21 +00:00
Stanislav Malyshev
40fd4fb21b Standartize full path handling - everything now goes via expand_filepath
Add errno to open_basedir checking function
2000-08-08 16:36:25 +00:00
Andi Gutmans
c756ae2d9f Virtualize realpath, chmod, chown and utime
This should fix #5935 and #5904
@- Virtualize realpath, chmod, chown and utime (Stas)
2000-08-06 16:22:07 +00:00
Stanislav Malyshev
688268727e If we can't find a protocol in URL wrapper, try it as a filename (fix #5931) 2000-08-03 15:09:27 +00:00
Rasmus Lerdorf
677df784c1 This url symbol was a bit too generic. Change it to php_url instead.
It was clashing with a similar typedef in the UdmSearch integration I am
working on.
2000-07-29 22:32:21 +00:00
Zeev Suraski
d8a4278ab4 - Update .dsp's
- Make non ZTS Win32 build again
2000-07-29 10:48:57 +00:00
Zeev Suraski
6614e8edb4 - I wrote a long msg but the commit didn't go through.
- So here is the short version:
- a) Start moving to binary opens in Windows
- b) Give checkuid_mode() a small face lift including the fopen-wrappers.c
- The mode to this function should at least be a #define but that is for
- another day. Anyway this whole stuff should be given more face lifts in
- the future.
2000-06-25 17:02:59 +00:00
Andi Gutmans
bd900fb66b - Make Windows compile 2000-06-16 08:02:33 +00:00
Andi Gutmans
e3ae196da8 - Don't need to check doc_root's length twice 2000-06-16 01:25:02 +00:00
Andi Gutmans
f8ecf34bf1 - Last one for tonight. Make sure that we don't check uninitialized
- memory
2000-06-16 01:23:03 +00:00
Andi Gutmans
b73a6f883d - Last patch for tonight. A more optimized way to check for absolute path
- in Windows. This should be fixed to use the virtual cwd macro for
- ABSOLUTE_DIR() but I need to have time to understand the logic first
2000-06-16 01:14:08 +00:00
Andi Gutmans
70b8e3e8f6 - Missed a bracket 2000-06-16 01:08:39 +00:00
Andi Gutmans
cbfa4c88d9 - Beautify fopen-wrappers a bit.
- Still needs quite a lot of improvement in order to treat Windows well
2000-06-16 00:56:38 +00:00
Zeev Suraski
fce92e3ca2 Avoid using E_CORE_* errorlevels in any place which is not in the global startup sequence 2000-06-12 20:22:17 +00:00
Andrei Zmievski
e52889acd9 @- Changed WDDX to always serialize arrays as structs. (Andrei)
Changed WDDX to always serialize arrays as structs. PR #4924
2000-06-09 13:50:39 +00:00
Hartmut Holzgraefe
eb8cd900a6 @ fopen_wrappers() are now extensible via modules
so here it finaly is, the more general approach to fopen wrappers
# see what i'll break this time
2000-06-08 09:43:12 +00:00
Andi Gutmans
8c82566b48 - Fix problem in sessions module under Win32. Need to use ; as an options
- delimiter in save_path instead of :.
2000-05-27 16:38:49 +00:00
Zeev Suraski
e043439ff6 Update the license with the new clause 6 2000-05-18 15:34:45 +00:00
Zeev Suraski
0b8369196b A few .dsp fixes 2000-04-20 22:52:37 +00:00
Andi Gutmans
4928f63821 - Change a getcwd() 2000-04-20 21:07:39 +00:00
Andi Gutmans
e40268d07c - Add missing V_STAT() 2000-04-20 16:38:08 +00:00
Andi Gutmans
1665cba750 - Change PHP_ to V_ (directory & file functions) 2000-04-15 14:20:01 +00:00
Andi Gutmans
7f54318897 - Turn off VIRTUAL_DIR by default 2000-04-11 17:00:21 +00:00
Zeev Suraski
8ec20a16ed Fix another missing opened_path assignment 2000-04-10 22:50:32 +00:00
Andi Gutmans
c981be0bca - Don't need to extern functions
- Use virtual_file_ex() in expand_filepath()
2000-04-09 19:54:50 +00:00
Zeev Suraski
a0ba444959 Add a missing expand_filepath() 2000-04-07 22:10:04 +00:00
Andi Gutmans
1bab18a00c - This shouldn't do any harm and might fix a problem with Win32 2000-03-31 22:48:59 +00:00
Andi Gutmans
9df7df3293 - Baby steps... Use PHP_FOPEN() 2000-03-30 22:41:13 +00:00
Andi Gutmans
72b57c66f0 - Use PHP_CHDIR() 2000-03-30 22:39:29 +00:00
Andi Gutmans
f9547241d5 - Fix another bug in session.c
- Start using the new PHP_GETCWD() and co. macros
2000-03-30 22:38:50 +00:00
Andi Gutmans
c56df5cac0 - WIN32 -> PHP_WIN32 2000-03-15 19:12:41 +00:00
Andi Gutmans
eedd3ac4d0 - Use strlcpy() insted of strcpy() 2000-03-10 18:19:08 +00:00
Andi Gutmans
312071bd08 - Fix bug 3640 2000-02-27 05:22:48 +00:00
Zeev Suraski
bf5cb890b0 - Convert 'PHP3' to 'PHP'
- Avoid declaring crypt() related salt types twice
2000-02-26 03:20:55 +00:00
Zeev Suraski
9b621d1c8f Get the license right... (this won't make it to RC1 of B4) 2000-02-19 23:21:46 +00:00
Zeev Suraski
80bdd19e03 Fine tune Andi's patch 2000-02-11 15:59:30 +00:00
Andi Gutmans
f9e0d94a65 - Baby steps with PHP_WIN32 :) 2000-02-11 12:56:54 +00:00
Zeev Suraski
6d0ab6166c SAPIfication, Episode VI: Return of the SAPI
Remove mostly all references to APACHE and CGI_BINARY from the code.

- Apache include files are no longer included by any PHP code, except for the Apache SAPI module.
- No server specific code is in any of the base PHP code.

Still left to be done:
- Eliminate any references to APACHE from the few remaining modules.
- Move request_info.c's logic to SAPI
- Modify the regex function names, and globals, so that we can always
  include them, without having to fear any interference with Apache;
  Always use the bundled regex library
2000-02-10 19:41:21 +00:00
Andi Gutmans
f452c7762f - Introduce PHP_WIN32 2000-02-10 17:14:05 +00:00
Sascha Schumann
43ae2bffbb Happy Y2K patch! Happy new year (or the new millennium, depending on whether
you start counting at 0 or 1).
2000-01-01 01:32:05 +00:00
Andrei Zmievski
0f1acb60a1 php3 -> php prefix work 1999-12-21 19:43:38 +00:00
Zeev Suraski
a3c6514332 More php3_ annihilation 1999-12-17 19:51:39 +00:00
Zeev Suraski
02d3b39420 More php3_ annihilation 1999-12-17 19:16:50 +00:00