/    Sign up×
Community /Pin to ProfileBookmark

session variable problem with exec_dir patch

I have patched my php 5.2.5 source files with the exec_dir patch. The problem is that it prevents session variables from being set. If I recompile from an unpatched source the problem goes away. I have emailed the author of the exec_dir patch and he says the problem I am experiencing can’t be related to his patch, which based on what is does, I would agree, but I have recompiled at least a dozen times now with as many different options as I can think of, and it’s always the same – works when the patch hasn’t been applied and doesn’t work when it has. I do have the suhosin patch, but I have tried his patch with and without suhosin and it makes no difference.

This is my php config

–with-apxs2
–with-mysql
–with-zlib
–with-gd
–with-gettext
–with-iconv
–enable-mbstring
–with-xmlrpc
–enable-cli
–with-pspell
–enable-gd-native-ttf
–with-freetype-dir
–with-jpeg-dir
–with-png-dir

These are the results of my make test, with and without the exec_dir patch applied.

Without exec_dir patch:

FAILED TEST SUMMARY
———————————————————————

date OO cloning [ext/date/tests/oo_002.phpt]
Bug #16069 (ICONV transliteration failure) [ext/iconv/tests/bug16069.phpt]
iconv stream filter [ext/iconv/tests/iconv_stream_filter.phpt]
Bug #41567 (json_encode() double conversion is inconsistent with PHP) [ext/json/tests/bug41567.phpt]
Test array_reverse() function : usage variations – assoc. array with diff. value for ‘array’ argument [ext/standard/tests/array/array_reverse_variation5.phpt]
Test array_unshift() function : usage variations – assoc. array with diff values for ‘array’ argument [ext/standard/tests/array/array_unshift_variation5.phpt]
Stream: RFC2397 [ext/standard/tests/file/stream_rfc2397_001.phpt]
Stream: RFC2397 getting meta data [ext/standard/tests/file/stream_rfc2397_002.phpt]
Stream: RFC2397 decoding data [ext/standard/tests/file/stream_rfc2397_003.phpt]
Stream: RFC2397 Mozilla tests [ext/standard/tests/file/stream_rfc2397_004.phpt]
Stream: RFC2397 without // [ext/standard/tests/file/stream_rfc2397_005.phpt]
Stream: RFC2397 with corrupt? payload [ext/standard/tests/file/stream_rfc2397_006.phpt]
Stream: RFC2397 and seeking [ext/standard/tests/file/stream_rfc2397_007.phpt]
money_format test [ext/standard/tests/strings/moneyformat.phpt]
Test setlocale() function : basic functionality – setting system locale to a specific [ext/standard/tests/strings/setlocale_basic1.phpt]
Test setlocale() function : basic functionality – set locale using an array [ext/standard/tests/strings/setlocale_basic2.phpt]
Test setlocale() function : basic functionality – passing multiple locales as argument [ext/standard/tests/strings/setlocale_basic3.phpt]
Test setlocale() function : usage variations – passing multiple valid/invlaid locales as argument [ext/standard/tests/strings/setlocale_variation1.phpt]
Test setlocale() function : usage variations – setting system locale = 0 [ext/standard/tests/strings/setlocale_variation3.phpt]
Test setlocale() function : usage variations – setting system locale as null [ext/standard/tests/strings/setlocale_variation4.phpt]
Test setlocale() function : usage variations – Setting system locale as empty string [ext/standard/tests/strings/setlocale_variation5.phpt]
Test vsprintf() function : usage variations – string formats with non-string values [ext/standard/tests/strings/vsprintf_variation8.phpt]

With exec_dir patch:

FAILED TEST SUMMARY
———————————————————————

date OO cloning [ext/date/tests/oo_002.phpt]
Bug #16069 (ICONV transliteration failure) [ext/iconv/tests/bug16069.phpt]
iconv stream filter [ext/iconv/tests/iconv_stream_filter.phpt]
Bug #41567 (json_encode() double conversion is inconsistent with PHP) [ext/json/tests/bug41567.phpt]
Test array_reverse() function : usage variations – assoc. array with diff. value for ‘array’ argument [ext/standard/tests/array/array_reverse_variation5.phpt]
Test array_unshift() function : usage variations – assoc. array with diff values for ‘array’ argument [ext/standard/tests/array/array_unshift_variation5.phpt]
Test is_file() function: usage variations – diff. path notations (Bug #42027, #42638) [ext/standard/tests/file/is_file_variation4.phpt]
Test rename() function: usage variations-1 (Bug#42638) [ext/standard/tests/file/rename_variation.phpt]
Stream: RFC2397 [ext/standard/tests/file/stream_rfc2397_001.phpt]
Stream: RFC2397 getting meta data [ext/standard/tests/file/stream_rfc2397_002.phpt]
Stream: RFC2397 decoding data [ext/standard/tests/file/stream_rfc2397_003.phpt]
Stream: RFC2397 Mozilla tests [ext/standard/tests/file/stream_rfc2397_004.phpt]
Stream: RFC2397 without // [ext/standard/tests/file/stream_rfc2397_005.phpt]
Stream: RFC2397 with corrupt? payload [ext/standard/tests/file/stream_rfc2397_006.phpt]
Stream: RFC2397 and seeking [ext/standard/tests/file/stream_rfc2397_007.phpt]
money_format test [ext/standard/tests/strings/moneyformat.phpt]
Test setlocale() function : basic functionality – setting system locale to a specific [ext/standard/tests/strings/setlocale_basic1.phpt]
Test setlocale() function : basic functionality – set locale using an array [ext/standard/tests/strings/setlocale_basic2.phpt]
Test setlocale() function : basic functionality – passing multiple locales as argument [ext/standard/tests/strings/setlocale_basic3.phpt]
Test setlocale() function : usage variations – passing multiple valid/invlaid locales as argument [ext/standard/tests/strings/setlocale_variation1.phpt]
Test setlocale() function : usage variations – setting system locale = 0 [ext/standard/tests/strings/setlocale_variation3.phpt]
Test setlocale() function : usage variations – setting system locale as null [ext/standard/tests/strings/setlocale_variation4.phpt]
Test setlocale() function : usage variations – Setting system locale as empty string [ext/standard/tests/strings/setlocale_variation5.phpt]
Test vsprintf() function : usage variations – string formats with non-string values [ext/standard/tests/strings/vsprintf_variation8.phpt]

These two lines seem to be the only difference when the patch is applied:
Test is_file() function: usage variations – diff. path notations (Bug #42027, #42638) [ext/standard/tests/file/is_file_variation4.phpt]
Test rename() function: usage variations-1 (Bug#42638) [ext/standard/tests/file/rename_variation.phpt]

Here are some of my relevant php.ini settings.

session.save_handler = files
session.save_path = /php/writable_path
session.use_cookies = 1
session.use_only_cookies is not set and therefore defaults to 0
session.auto_start = 0
session.cookie_lifetime = 0
session.cookie_path = /
session.cookie_domain =
session.cookie_httponly =
session.serialize_handler = php
session.gc_divisor = 100
session.gc_maxlifetime = 1440
session.bug_compat_42 = 1
session.bug_compat_warn = 1
session.referer_check =
session.entropy_length = 0
session.entropy_file =
session.cache_expire = 180
session.use_trans_sid = 0
session.hash_function = 0

Thanks for any thoughts on this, it’s driving me crazy.

to post a comment
PHP

2 Comments(s)

Copy linkTweet thisAlerts:
@adrianbjauthorMar 04.2008 — Anyone even have any ideas on where I should start looking to solve this problem?

Thanks
×

Success!

Help @adrianbj spread the word by sharing this article on Twitter...

Tweet This
Sign in
Forgot password?
Sign in with TwitchSign in with GithubCreate Account
about: ({
version: 0.1.9 BETA 5.4,
whats_new: community page,
up_next: more Davinci•003 tasks,
coming_soon: events calendar,
social: @webDeveloperHQ
});

legal: ({
terms: of use,
privacy: policy
});
changelog: (
version: 0.1.9,
notes: added community page

version: 0.1.8,
notes: added Davinci•003

version: 0.1.7,
notes: upvote answers to bounties

version: 0.1.6,
notes: article editor refresh
)...
recent_tips: (
tipper: @Yussuf4331,
tipped: article
amount: 1000 SATS,

tipper: @darkwebsites540,
tipped: article
amount: 10 SATS,

tipper: @Samric24,
tipped: article
amount: 1000 SATS,
)...