Commit Graph

196 Commits

Author SHA1 Message Date
Marcus Boerger
a1f7bb12f1 use php_error_docref() 2002-08-25 18:45:02 +00:00
Zeev Suraski
bc906117bb Fix a few warnings 2002-08-19 20:47:55 +00:00
Rasmus Lerdorf
63e6666216 MTH - thought the code was slightly different in HEAD because of the
streams stuff, but it is exactly the same bug.
@ Safe-mode fix related to the safe_mode_include_dir feature (Rasmus)
2002-05-11 19:58:40 +00:00
Wez Furlong
0f65280cb5 New PHP streams... 2002-03-15 21:03:08 +00:00
Sebastian Bergmann
3ff94ed265 Fix thread-safe build. 2002-02-02 05:43:55 +00:00
James E. Flemer
6aadae975c Changed php.ini directive 'safe_mode_include_dir' to accept a
(semi)colon separated path, rather than a single directory.
Also moved checking of said path into a separate path for code
readability.
@- Changed php.ini directive 'safe_mode_include_dir' to accept a
@  (semi)colon separated path (like 'include_path') rather than
@  a single directory. (jflemer)
2002-02-01 20:04:14 +00:00
Alex Waugh
e320de1e2e Undefine AF_UNIX under RISC OS 2001-12-23 00:46:13 +00:00
Sebastian Bergmann
38933514e1 Update headers. 2001-12-11 15:32:16 +00:00
Sterling Hughes
b91a66699c Z_TYPE(filehandle)?? ok.. whatever... ;) 2001-11-26 18:57:44 +00:00
Jeroen van Wolffelaar
c033288573 Back-substitute for Z_* macro's. If it breaks some extension (the script isn't optimal, it parses for example var->zval.value incorrect) please let me know. 2001-09-25 21:58:48 +00:00
Derick Rethans
78747bd2df - Don't wrap lines... this is annoying while coding. 2001-09-09 13:29:31 +00:00
Zeev Suraski
1159c84ab7 - TSRMLS_FETCH work
- whitespace fixes
2001-08-05 01:43:02 +00:00
foobar
0ccc2fd9ef kill warning and make this build again. 2001-08-01 00:31:19 +00:00
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