Hi, Please find attached, the second part of the NetWare diff.
Please let me know of your observations on this and if we can check this into the php5 sources. We can shoot to have these changes into the proposed Beta 4 for PHP5. Thanks, Ananth.
Index: netware/ApacheCore.imp =================================================================== RCS file: /repository/php-src/netware/ApacheCore.imp,v retrieving revision 1.2 diff -u -r1.2 ApacheCore.imp --- netware/ApacheCore.imp 3 Jan 2003 12:15:36 -0000 1.2 +++ netware/ApacheCore.imp 3 Feb 2004 07:27:03 -0000 @@ -1,365 +1,365 @@ - ap_MD5Final, - ap_MD5Init, - ap_MD5Update, - ap_acquire_mutex, - ap_add_cgi_vars, - ap_add_common_vars, - ap_add_loaded_module, - ap_add_module, - ap_add_named_module, - ap_add_per_dir_conf, - ap_add_per_url_conf, - ap_add_version_component, - ap_allow_options, - ap_allow_overrides, - ap_append_arrays, - ap_array_cat, - ap_auth_name, - ap_auth_type, - ap_basic_http_header, - ap_bclose, - ap_bcreate, - ap_bfilbuf, - ap_bfileno, - ap_bflsbuf, - ap_bflush, - ap_bgetopt, - ap_bgets, - ap_bhalfduplex, - ap_block_alarms, - ap_blookc, - ap_bnonblock, - ap_bonerror, - ap_bpushfd, - ap_bputs, - ap_bread, - ap_bsetflag, - ap_bsetopt, - ap_bskiplf, - ap_bspawn_child, - ap_bwrite, - ap_bytes_in_free_blocks, - ap_bytes_in_pool, - ap_call_exec, - ap_can_exec, - ap_cfg_closefile, - ap_cfg_getc, - ap_cfg_getline, - ap_chdir_file, - ap_check_alarm, - ap_check_cmd_context, - ap_checkmask, - ap_cleanup_for_exec, - ap_clear_module_list, - ap_clear_pool, - ap_clear_table, - ap_close_piped_log, - ap_construct_server, - ap_construct_url, - ap_content_type_tolower, - ap_copy_array, - ap_copy_array_hdr, - ap_copy_table, - ap_count_dirs, - ap_cpystrn, - ap_create_environment, - ap_create_mutex, - ap_create_per_dir_config, - ap_custom_response, - ap_default_port_for_request, - ap_default_port_for_scheme, - ap_default_type, - ap_destroy_mutex, - ap_destroy_pool, - ap_destroy_sub_req, - ap_die, - ap_discard_request_body, - ap_document_root, - ap_each_byterange, - ap_error_log2stderr, - ap_escape_html, - ap_escape_path_segment, - ap_escape_quotes, - ap_escape_shell_cmd, - ap_exists_scoreboard_image, - ap_finalize_request_protocol, - ap_find_command, - ap_find_command_in_modules, - ap_find_last_token, - ap_find_linked_module, - ap_find_module_name, - ap_find_path_info, - ap_find_token, - ap_get_basic_auth_pw, - ap_get_client_block, - ap_get_gmtoff, - ap_get_limit_req_body, - ap_get_remote_host, - ap_get_remote_logname, - ap_get_server_built, - ap_get_server_name, - ap_get_server_port, - ap_get_server_version, - ap_get_time, - ap_get_token, - ap_getparents, - ap_getword, - ap_getword_conf, - ap_getword_conf_nc, - ap_getword_nc, - ap_getword_nulls, - ap_getword_nulls_nc, - ap_getword_white, - ap_getword_white_nc, - ap_gm_timestr_822, - ap_gname2id, - ap_handle_command, - ap_hard_timeout, - ap_ht_time, - ap_ind, - ap_index_of_response, - ap_init_virtual_host, - ap_internal_redirect, - ap_internal_redirect_handler, - ap_is_directory, - ap_is_fnmatch, - ap_is_initial_req, - ap_is_matchexp, - ap_is_url, - ap_kill_cleanup, - ap_kill_cleanups_for_fd, - ap_kill_cleanups_for_socket, - ap_kill_timeout, - ap_log_assert, - ap_log_error_old, - ap_log_reason, - ap_log_unixerr, - ap_make_array, - ap_make_dirstr, - ap_make_dirstr_parent, - ap_make_dirstr_prefix, - ap_make_full_path, - ap_make_sub_pool, - ap_make_table, - ap_matches_request_vhost, - ap_md5, - ap_md5_binary, - ap_md5contextTo64, - ap_md5digest, - ap_meets_conditions, - ap_no2slash, - ap_note_auth_failure, - ap_note_basic_auth_failure, - ap_note_cleanups_for_fd, - ap_note_cleanups_for_file, - ap_note_cleanups_for_socket, - ap_note_digest_auth_failure, - ap_note_subprocess, - ap_open_mutex, - ap_open_piped_log, - ap_os_escape_path, - ap_overlap_tables, - ap_overlay_tables, - ap_palloc, - ap_parseHTTPdate, - ap_parse_hostinfo_components, - ap_parse_uri, - ap_parse_uri_components, - ap_pcalloc, - ap_pcfg_open_custom, - ap_pcfg_openfile, - ap_pclosedir, - ap_pclosef, - ap_pclosesocket, - ap_pduphostent, - ap_pfclose, - ap_pfdopen, - ap_pfopen, - ap_pgethostbyname, - ap_popendir, - ap_popenf, - ap_pregcomp, - ap_pregfree, - ap_pregsub, - ap_psignature, - ap_psocket, - ap_pstrdup, - ap_pstrndup, - ap_push_array, - ap_pvsprintf, - ap_rationalize_mtime, - ap_register_cleanup, - ap_release_mutex, - ap_remove_loaded_module, - ap_remove_module, - ap_requires, - ap_reset_timeout, - ap_rflush, - ap_rind, - ap_rputc, - ap_rputs, - ap_run_cleanup, - ap_run_sub_req, - ap_rwrite, - ap_satisfies, - ap_scan_script_header_err, - ap_scan_script_header_err_buff, - ap_scan_script_header_err_core, - ap_send_fb, - ap_send_fb_length, - ap_send_fd, - ap_send_fd_length, - ap_send_http_header, - ap_send_http_trace, - ap_send_mmap, - ap_send_size, - ap_server_root_relative, - ap_set_byterange, - ap_set_content_length, - ap_set_etag, - ap_set_keepalive, - ap_set_last_modified, - ap_setup_client_block, - ap_should_client_block, - ap_soft_timeout, - ap_some_auth_required, - ap_spawn_child, - ap_srm_command_loop, - ap_str_tolower, - ap_strcasecmp_match, - ap_strcmp_match, - ap_sub_req_lookup_file, - ap_sub_req_lookup_uri, - ap_sync_scoreboard_image, - ap_table_add, - ap_table_addn, - ap_table_get, - ap_table_merge, - ap_table_mergen, - ap_table_set, - ap_table_setn, - ap_table_unset, - ap_tm2sec, - ap_uname2id, - ap_unblock_alarms, - ap_unescape_url, - ap_unparse_uri_components, - ap_update_mtime, - ap_uudecode, - ap_uuencode, - ap_vbprintf, - ap_vformatter, - ap_vsnprintf, - regcomp, - regexec, - regfree, - access_module, - alias_module, - ap_bprintf, - ap_bvputs, - ap_day_snames, - ap_extended_status, - ap_limit_section, - ap_loaded_modules, - ap_log_error, - ap_log_printf, - ap_log_rerror, - ap_month_snames, - ap_null_cleanup, - ap_psprintf, - ap_pstrcat, - ap_restart_time, - ap_rprintf, - ap_rvputs, - ap_scoreboard_image, - ap_send_header_field, - ap_server_argv0, - ap_server_root, - ap_set_file_slot, - ap_set_flag_slot, - ap_set_string_slot, - ap_set_string_slot_lower, - ap_snprintf, - ap_suexec_enabled, - ap_table_do, - apache_main, - asis_module, - auth_module, - autoindex_module, - config_log_module, - core_module, - dir_module, - env_module, - imap_module, - includes_module, - mime_module, - negotiation_module, - setenvif_module, - so_module, - top_module, - ap_fnmatch, - ap_method_number_of, - ap_exists_config_define, - ap_single_module_configure, - ap_make_etag, - ap_array_pstrcat, - ap_find_list_item, - ap_MD5Encode, - ap_validate_password, - ap_size_list_item, - ap_get_list_item, - ap_scoreboard_fname, - ap_pid_fname, - ap_excess_requests_per_child, - ap_threads_per_child, - ap_max_requests_per_child, - ap_daemons_to_start, - ap_daemons_min_free, - ap_daemons_max_free, - ap_daemons_limit, - ap_user_name, - ap_user_id, - ap_group_id, - ap_standalone, - ap_server_confname, - ap_sub_req_method_uri, - ap_regerror, - ap_regexec, - ap_field_noparam, - ap_pbase64decode, - ap_pbase64encode, - ap_base64encode, - ap_base64encode_binary, - ap_base64encode_len, - ap_base64decode, - ap_base64decode_binary, - ap_base64decode_len, - ap_SHA1Init, - ap_SHA1Update_binary, - ap_SHA1Update, - ap_SHA1Final, - ap_sha1_base64, - ap_my_generation, - ap_get_virthost_addr, - ap_listeners, - ap_listenbacklog, - clean_parent_exit, - init_tsd, - ap_set_config_vectors, - ap_strcasestr, - ap_to64, - ap_vrprintf, - regerror, - ap_add_file_conf, - ap_configtestonly, - ap_is_rdirectory, - ap_remove_spaces, - ap_scan_script_header_err_strs, - ap_start_shutdown, - ap_start_restart, - ap_stripprefix, - ap_send_error_response, - ap_os_canonical_filename, - ap_os_http_method, - os_readdir, - os_opendir + ap_MD5Final, + ap_MD5Init, + ap_MD5Update, + ap_acquire_mutex, + ap_add_cgi_vars, + ap_add_common_vars, + ap_add_loaded_module, + ap_add_module, + ap_add_named_module, + ap_add_per_dir_conf, + ap_add_per_url_conf, + ap_add_version_component, + ap_allow_options, + ap_allow_overrides, + ap_append_arrays, + ap_array_cat, + ap_auth_name, + ap_auth_type, + ap_basic_http_header, + ap_bclose, + ap_bcreate, + ap_bfilbuf, + ap_bfileno, + ap_bflsbuf, + ap_bflush, + ap_bgetopt, + ap_bgets, + ap_bhalfduplex, + ap_block_alarms, + ap_blookc, + ap_bnonblock, + ap_bonerror, + ap_bpushfd, + ap_bputs, + ap_bread, + ap_bsetflag, + ap_bsetopt, + ap_bskiplf, + ap_bspawn_child, + ap_bwrite, + ap_bytes_in_free_blocks, + ap_bytes_in_pool, + ap_call_exec, + ap_can_exec, + ap_cfg_closefile, + ap_cfg_getc, + ap_cfg_getline, + ap_chdir_file, + ap_check_alarm, + ap_check_cmd_context, + ap_checkmask, + ap_cleanup_for_exec, + ap_clear_module_list, + ap_clear_pool, + ap_clear_table, + ap_close_piped_log, + ap_construct_server, + ap_construct_url, + ap_content_type_tolower, + ap_copy_array, + ap_copy_array_hdr, + ap_copy_table, + ap_count_dirs, + ap_cpystrn, + ap_create_environment, + ap_create_mutex, + ap_create_per_dir_config, + ap_custom_response, + ap_default_port_for_request, + ap_default_port_for_scheme, + ap_default_type, + ap_destroy_mutex, + ap_destroy_pool, + ap_destroy_sub_req, + ap_die, + ap_discard_request_body, + ap_document_root, + ap_each_byterange, + ap_error_log2stderr, + ap_escape_html, + ap_escape_path_segment, + ap_escape_quotes, + ap_escape_shell_cmd, + ap_exists_scoreboard_image, + ap_finalize_request_protocol, + ap_find_command, + ap_find_command_in_modules, + ap_find_last_token, + ap_find_linked_module, + ap_find_module_name, + ap_find_path_info, + ap_find_token, + ap_get_basic_auth_pw, + ap_get_client_block, + ap_get_gmtoff, + ap_get_limit_req_body, + ap_get_remote_host, + ap_get_remote_logname, + ap_get_server_built, + ap_get_server_name, + ap_get_server_port, + ap_get_server_version, + ap_get_time, + ap_get_token, + ap_getparents, + ap_getword, + ap_getword_conf, + ap_getword_conf_nc, + ap_getword_nc, + ap_getword_nulls, + ap_getword_nulls_nc, + ap_getword_white, + ap_getword_white_nc, + ap_gm_timestr_822, + ap_gname2id, + ap_handle_command, + ap_hard_timeout, + ap_ht_time, + ap_ind, + ap_index_of_response, + ap_init_virtual_host, + ap_internal_redirect, + ap_internal_redirect_handler, + ap_is_directory, + ap_is_fnmatch, + ap_is_initial_req, + ap_is_matchexp, + ap_is_url, + ap_kill_cleanup, + ap_kill_cleanups_for_fd, + ap_kill_cleanups_for_socket, + ap_kill_timeout, + ap_log_assert, + ap_log_error_old, + ap_log_reason, + ap_log_unixerr, + ap_make_array, + ap_make_dirstr, + ap_make_dirstr_parent, + ap_make_dirstr_prefix, + ap_make_full_path, + ap_make_sub_pool, + ap_make_table, + ap_matches_request_vhost, + ap_md5, + ap_md5_binary, + ap_md5contextTo64, + ap_md5digest, + ap_meets_conditions, + ap_no2slash, + ap_note_auth_failure, + ap_note_basic_auth_failure, + ap_note_cleanups_for_fd, + ap_note_cleanups_for_file, + ap_note_cleanups_for_socket, + ap_note_digest_auth_failure, + ap_note_subprocess, + ap_open_mutex, + ap_open_piped_log, + ap_os_escape_path, + ap_overlap_tables, + ap_overlay_tables, + ap_palloc, + ap_parseHTTPdate, + ap_parse_hostinfo_components, + ap_parse_uri, + ap_parse_uri_components, + ap_pcalloc, + ap_pcfg_open_custom, + ap_pcfg_openfile, + ap_pclosedir, + ap_pclosef, + ap_pclosesocket, + ap_pduphostent, + ap_pfclose, + ap_pfdopen, + ap_pfopen, + ap_pgethostbyname, + ap_popendir, + ap_popenf, + ap_pregcomp, + ap_pregfree, + ap_pregsub, + ap_psignature, + ap_psocket, + ap_pstrdup, + ap_pstrndup, + ap_push_array, + ap_pvsprintf, + ap_rationalize_mtime, + ap_register_cleanup, + ap_release_mutex, + ap_remove_loaded_module, + ap_remove_module, + ap_requires, + ap_reset_timeout, + ap_rflush, + ap_rind, + ap_rputc, + ap_rputs, + ap_run_cleanup, + ap_run_sub_req, + ap_rwrite, + ap_satisfies, + ap_scan_script_header_err, + ap_scan_script_header_err_buff, + ap_scan_script_header_err_core, + ap_send_fb, + ap_send_fb_length, + ap_send_fd, + ap_send_fd_length, + ap_send_http_header, + ap_send_http_trace, + ap_send_mmap, + ap_send_size, + ap_server_root_relative, + ap_set_byterange, + ap_set_content_length, + ap_set_etag, + ap_set_keepalive, + ap_set_last_modified, + ap_setup_client_block, + ap_should_client_block, + ap_soft_timeout, + ap_some_auth_required, + ap_spawn_child, + ap_srm_command_loop, + ap_str_tolower, + ap_strcasecmp_match, + ap_strcmp_match, + ap_sub_req_lookup_file, + ap_sub_req_lookup_uri, + ap_sync_scoreboard_image, + ap_table_add, + ap_table_addn, + ap_table_get, + ap_table_merge, + ap_table_mergen, + ap_table_set, + ap_table_setn, + ap_table_unset, + ap_tm2sec, + ap_uname2id, + ap_unblock_alarms, + ap_unescape_url, + ap_unparse_uri_components, + ap_update_mtime, + ap_uudecode, + ap_uuencode, + ap_vbprintf, + ap_vformatter, + ap_vsnprintf, + regcomp, + regexec, + regfree, + access_module, + alias_module, + ap_bprintf, + ap_bvputs, + ap_day_snames, + ap_extended_status, + ap_limit_section, + ap_loaded_modules, + ap_log_error, + ap_log_printf, + ap_log_rerror, + ap_month_snames, + ap_null_cleanup, + ap_psprintf, + ap_pstrcat, + ap_restart_time, + ap_rprintf, + ap_rvputs, + ap_scoreboard_image, + ap_send_header_field, + ap_server_argv0, + ap_server_root, + ap_set_file_slot, + ap_set_flag_slot, + ap_set_string_slot, + ap_set_string_slot_lower, + ap_snprintf, + ap_suexec_enabled, + ap_table_do, + apache_main, + asis_module, + auth_module, + autoindex_module, + config_log_module, + core_module, + dir_module, + env_module, + imap_module, + includes_module, + mime_module, + negotiation_module, + setenvif_module, + so_module, + top_module, + ap_fnmatch, + ap_method_number_of, + ap_exists_config_define, + ap_single_module_configure, + ap_make_etag, + ap_array_pstrcat, + ap_find_list_item, + ap_MD5Encode, + ap_validate_password, + ap_size_list_item, + ap_get_list_item, + ap_scoreboard_fname, + ap_pid_fname, + ap_excess_requests_per_child, + ap_threads_per_child, + ap_max_requests_per_child, + ap_daemons_to_start, + ap_daemons_min_free, + ap_daemons_max_free, + ap_daemons_limit, + ap_user_name, + ap_user_id, + ap_group_id, + ap_standalone, + ap_server_confname, + ap_sub_req_method_uri, + ap_regerror, + ap_regexec, + ap_field_noparam, + ap_pbase64decode, + ap_pbase64encode, + ap_base64encode, + ap_base64encode_binary, + ap_base64encode_len, + ap_base64decode, + ap_base64decode_binary, + ap_base64decode_len, + ap_SHA1Init, + ap_SHA1Update_binary, + ap_SHA1Update, + ap_SHA1Final, + ap_sha1_base64, + ap_my_generation, + ap_get_virthost_addr, + ap_listeners, + ap_listenbacklog, + clean_parent_exit, + init_tsd, + ap_set_config_vectors, + ap_strcasestr, + ap_to64, + ap_vrprintf, + regerror, + ap_add_file_conf, + ap_configtestonly, + ap_is_rdirectory, + ap_remove_spaces, + ap_scan_script_header_err_strs, + ap_start_shutdown, + ap_start_restart, + ap_stripprefix, + ap_send_error_response, + ap_os_canonical_filename, + ap_os_http_method, + os_readdir, + os_opendir Index: netware/BisonExtStandard.bat =================================================================== RCS file: /repository/php-src/netware/BisonExtStandard.bat,v retrieving revision 1.2 diff -u -r1.2 BisonExtStandard.bat --- netware/BisonExtStandard.bat 3 Jan 2003 12:15:36 -0000 1.2 +++ netware/BisonExtStandard.bat 3 Feb 2004 07:27:03 -0000 @@ -1,3 +1,3 @@ [EMAIL PROTECTED] off - -bison --output=ext\standard\parsedate.c -v -d -p phplib ext\standard\parsedate.y [EMAIL PROTECTED] off + +bison --output=ext\standard\parsedate.c -v -d -p phplib ext\standard\parsedate.y Index: netware/BisonFlexZend.bat =================================================================== RCS file: /repository/php-src/netware/BisonFlexZend.bat,v retrieving revision 1.2 diff -u -r1.2 BisonFlexZend.bat --- netware/BisonFlexZend.bat 3 Jan 2003 12:15:36 -0000 1.2 +++ netware/BisonFlexZend.bat 3 Feb 2004 07:27:03 -0000 @@ -1,8 +1,8 @@ [EMAIL PROTECTED] off - -bison --output=zend_ini_parser.c -v -d -p ini_ zend_ini_parser.y -flex -B -i -Sflex.skl -Pini_ -ozend_ini_scanner.c zend_ini_scanner.l -REM flex -i -Pini_ -ozend_ini_scanner.c zend_ini_scanner.l -bison --output=zend_language_parser.c -v -d -p zend zend_language_parser.y -flex -B -i -Sflex.skl -Pzend -ozend_language_scanner.c zend_language_scanner.l -REM flex -i -Pzend -ozend_language_scanner.c zend_language_scanner.l [EMAIL PROTECTED] off + +bison --output=zend_ini_parser.c -v -d -p ini_ zend_ini_parser.y +flex -B -i -Sflex.skl -Pini_ -ozend_ini_scanner.c zend_ini_scanner.l +REM flex -i -Pini_ -ozend_ini_scanner.c zend_ini_scanner.l +bison --output=zend_language_parser.c -v -d -p zend zend_language_parser.y +flex -B -i -Sflex.skl -Pzend -ozend_language_scanner.c zend_language_scanner.l +REM flex -i -Pzend -ozend_language_scanner.c zend_language_scanner.l Index: netware/ZendEngine2.mak =================================================================== RCS file: /repository/php-src/netware/ZendEngine2.mak,v retrieving revision 1.4 diff -u -r1.4 ZendEngine2.mak --- netware/ZendEngine2.mak 3 Jan 2003 11:46:20 -0000 1.4 +++ netware/ZendEngine2.mak 3 Feb 2004 07:27:03 -0000 @@ -15,9 +15,11 @@ C_SRC = zend.c \ zend_alloc.c \ zend_API.c \ + zend_arg_defs.c \ zend_builtin_functions.c \ zend_compile.c \ zend_constants.c \ + zend_default_classes.c \ zend_dynamic_array.c \ zend_execute.c \ zend_execute_API.c \ @@ -28,20 +30,26 @@ zend_ini.c \ zend_ini_parser.c \ zend_ini_scanner.c \ + zend_interfaces.c \ + zend_iterators.c \ zend_language_parser.c \ zend_language_scanner.c \ zend_list.c \ zend_llist.c \ + zend_mm.c \ zend_multibyte.c \ zend_object_handlers.c \ zend_objects.c \ + zend_objects_API.c \ zend_opcode.c \ zend_operators.c \ zend_ptr_stack.c \ zend_qsort.c \ + zend_reflection_api.c \ zend_sprintf.c \ zend_stack.c \ zend_static_allocator.c \ + zend_stream.c \ zend_ts_hash.c \ zend_variables.c @@ -59,20 +67,25 @@ # Compile flags -C_FLAGS = -c -maxerrors 25 -msgstyle std +C_FLAGS += -c -maxerrors 25 -msgstyle std C_FLAGS += -wchar_t on -bool on C_FLAGS += -processor Pentium C_FLAGS += -nostdinc C_FLAGS += -relax_pointers # To remove type-casting errors C_FLAGS += -D__C9X_CMATH_INLINES_DEFINED C_FLAGS += -DNETWARE -DZTS -C_FLAGS += -DNEW_LIBC -C_FLAGS += -DCLIB_STAT_PATCH C_FLAGS += -DTHREAD_SWITCH # These are required to use dlclose so that the PHP extensions are automatically unloaded # when apache is unloaded -C_FLAGS += -DHAVE_DLFCN_H -DHAVE_LIBDL +C_FLAGS += -DHAVE_DLFCN_H=1 -DHAVE_LIBDL=1 + +ifeq '$(APACHE_VER)' '1.3' +C_FLAGS += -DAPACHE_1_BUILD=1 +endif +ifeq '$(APACHE_VER)' '2' +C_FLAGS += -DAPACHE_2_BUILD=1 +endif C_FLAGS += -I. -I- -I../netware -I$(SDK_DIR)/include # ../netware added for special SYS/STAT.H C_FLAGS += -I$(MWCIncludes) @@ -90,7 +103,7 @@ LD_FLAGS += -sym codeview4 -sym internal export MWLibraryFiles=$(SDK_DIR)/imports/libcpre.o;mwcrtld.lib else - C_FLAGS += -opt speed -inline on -inline auto -sym off + C_FLAGS += -opt all -inline on -inline auto -sym off C_FLAGS += -DZEND_DEBUG=0 LD_FLAGS += -sym off export MWLibraryFiles=$(SDK_DIR)/imports/libcpre.o;mwcrtl.lib Index: netware/common.mif =================================================================== RCS file: /repository/php-src/netware/common.mif,v retrieving revision 1.4 diff -u -r1.4 common.mif --- netware/common.mif 3 Jan 2003 11:36:24 -0000 1.4 +++ netware/common.mif 3 Feb 2004 07:27:03 -0000 @@ -26,7 +26,7 @@ WINSOCK_DIR = P:/APPS/script/sw/Winsock2 # LDAP stuff -LDAP_DIR = P:/APPS/script/sw/cldapsdk +LDAP_DIR = P:/APPS/script/sw/cldapsdk/netware/libc # XML-EXPAT stuff EXPAT_DIR = P:/APPS/script/sw/expat @@ -67,7 +67,7 @@ endif ifndef COPYRIGHT -COPYRIGHT = "Copyright (C) 2002-2003 Novell\, Inc. All Rights Reserved." +COPYRIGHT = "Copyright (C) 2002-2004 Novell\, Inc. All Rights Reserved." endif Index: netware/php-nw.bat =================================================================== RCS file: /repository/php-src/netware/php-nw.bat,v retrieving revision 1.3 diff -u -r1.3 php-nw.bat --- netware/php-nw.bat 3 Jan 2003 11:46:19 -0000 1.3 +++ netware/php-nw.bat 3 Feb 2004 07:27:03 -0000 @@ -7,4 +7,4 @@ set path=%path%;P:\APPS\SCRIPT\SW\GNUWIN32\BIN REM Build options -setbuild r 1 +setbuild r 2 Index: netware/php5apache.mak =================================================================== RCS file: /repository/php-src/netware/php5apache.mak,v retrieving revision 1.1 diff -u -r1.1 php5apache.mak --- netware/php5apache.mak 17 Jan 2004 13:00:00 -0000 1.1 +++ netware/php5apache.mak 3 Feb 2004 07:27:03 -0000 @@ -5,7 +5,7 @@ # Module details MODULE_NAME = mod_php MODULE_DESC = "PHP 5 - Apache 1.3 Module" -VMAJ = 3 +VMAJ = 1 VMIN = 0 VREV = 0 @@ -17,10 +17,10 @@ .SUFFIXES: .nlm .lib .obj .cpp .c .msg .mlc .mdb .xdc .d # Source files -C_SRC = mod_php5.c \ +C_SRC = libpre.c \ + mod_php5.c \ php_apache.c \ sapi_apache.c \ - libpre.c # Destination directories and files OBJ_DIR = $(BUILD) @@ -36,7 +36,7 @@ # Compile flags -C_FLAGS = -c -maxerrors 25 -msgstyle gcc +C_FLAGS += -c -maxerrors 25 -msgstyle gcc C_FLAGS += -wchar_t on -bool on C_FLAGS += -processor Pentium C_FLAGS += -w nounusedarg -msext on @@ -47,7 +47,6 @@ C_FLAGS += -DNLM_PLATFORM C_FLAGS += -DN_PLAT_NLM -DNLM=1 -D__NO_MATH_OPS C_FLAGS += -D__C9X_CMATH_INLINES_DEFINED -DAPACHE_OS_H -DNO_USE_SIGACTION -DMULTITHREAD -C_FLAGS += -DCLIB_STAT_PATCH C_FLAGS += -DNEW_LIBC C_FLAGS += -I. -I- -I. -I../../netware -I$(SDK_DIR)/include # ../../netware added for special SYS/STAT.H C_FLAGS += -I$(MWCIncludes) @@ -67,7 +66,7 @@ LD_FLAGS += -msgstyle std export MWLibraryFiles=$(SDK_DIR)/imports/libcpre.o;mwcrtld.lib else - C_FLAGS += -opt speed -inline on -inline smart -inline auto -sym off -DZEND_DEBUG=0 + C_FLAGS += -opt all -inline on -inline smart -inline auto -sym off -DZEND_DEBUG=0 C_FLAGS += -opt intrinsics C_FLAGS += -opt level=4 LD_FLAGS += -sym off Index: netware/php5apache2filter.mak =================================================================== RCS file: /repository/php-src/netware/php5apache2filter.mak,v retrieving revision 1.1 diff -u -r1.1 php5apache2filter.mak --- netware/php5apache2filter.mak 17 Jan 2004 13:00:00 -0000 1.1 +++ netware/php5apache2filter.mak 3 Feb 2004 07:27:03 -0000 @@ -5,7 +5,7 @@ # Module details MODULE_NAME = mod_php MODULE_DESC = "PHP 5 - Apache 2.0 Module" -VMAJ = 3 +VMAJ = 1 VMIN = 0 VREV = 0 @@ -41,19 +41,18 @@ C_FLAGS += -w nounusedarg -msext on C_FLAGS += -nostdinc C_FLAGS += -relax_pointers # To remove type-casting errors -C_FLAGS += -DNETWARE +C_FLAGS += -DNETWARE -D__GNUC__ C_FLAGS += -DZTS C_FLAGS += -DNLM_PLATFORM C_FLAGS += -DN_PLAT_NLM -DNLM=1 -D__NO_MATH_OPS C_FLAGS += -D__C9X_CMATH_INLINES_DEFINED -DAPACHE_OS_H -DNO_USE_SIGACTION -DMULTITHREAD -C_FLAGS += -DCLIB_STAT_PATCH C_FLAGS += -DNEW_LIBC -C_FLAGS += -I. -I- -I. -I../../netware -I$(SDK_DIR)/include # ../../netware added for special SYS/STAT.H -C_FLAGS += -I$(SDK_DIR)/include/winsock # For Apache 2.0 headers +C_FLAGS += -I. -I- -I../../netware -I$(SDK_DIR)/include # ../../netware added for special SYS/STAT.H C_FLAGS += -I$(MWCIncludes) C_FLAGS += -I$(APACHE_DIR)/include C_FLAGS += -I- -I../../main -I../../Zend -I../../TSRM -I../../ext/standard C_FLAGS += -I../../ -I../../netware -I$(PROJECT_ROOT)/regex +C_FLAGS += -I$(SDK_DIR)/include/winsock # For Apache 2.0 headers C_FLAGS += -I$(WINSOCK_DIR)/include/nlm -I$(WINSOCK_DIR)/include @@ -67,7 +66,7 @@ LD_FLAGS += -msgstyle std export MWLibraryFiles=$(SDK_DIR)/imports/libcpre.o;mwcrtld.lib else - C_FLAGS += -opt speed -inline on -inline smart -inline auto -sym off -DZEND_DEBUG=0 + C_FLAGS += -opt all -inline on -inline smart -inline auto -sym off -DZEND_DEBUG=0 C_FLAGS += -opt intrinsics C_FLAGS += -opt level=4 LD_FLAGS += -sym off Index: netware/php5cli.mak =================================================================== RCS file: /repository/php-src/netware/php5cli.mak,v retrieving revision 1.1 diff -u -r1.1 php5cli.mak --- netware/php5cli.mak 17 Jan 2004 13:00:00 -0000 1.1 +++ netware/php5cli.mak 3 Feb 2004 07:27:03 -0000 @@ -5,7 +5,7 @@ # Module details MODULE_NAME = php MODULE_DESC = "PHP 5 - Command Line Interface" -VMAJ = 2 +VMAJ = 1 VMIN = 0 VREV = 0 @@ -64,7 +64,7 @@ LD_FLAGS += -sym on -sym codeview4 -sym internal -osym $(SYM_FILE) export MWLibraryFiles=$(SDK_DIR)/imports/libcpre.o;mwcrtld.lib else - C_FLAGS += -opt speed -inline on -inline smart -inline auto -sym off -DZEND_DEBUG=0 + C_FLAGS += -opt all -inline on -inline smart -inline auto -sym off -DZEND_DEBUG=0 C_FLAGS += -opt intrinsics C_FLAGS += -opt level=4 LD_FLAGS += -sym off Index: netware/phplib.imp =================================================================== RCS file: /repository/php-src/netware/phplib.imp,v retrieving revision 1.6 diff -u -r1.6 phplib.imp --- netware/phplib.imp 7 Mar 2003 05:15:27 -0000 1.6 +++ netware/phplib.imp 3 Feb 2004 07:27:04 -0000 @@ -12,8 +12,14 @@ _php_stream_cast, _php_stream_free, _php_stream_open_wrapper_ex, +_safe_emalloc, +_zend_bailout, _zend_get_parameters_array, _zend_get_parameters_array_ex, +_zend_hash_add_or_update, +_zend_hash_index_update_or_next_insert, +_zend_hash_init, +_zend_hash_init_ex, _zend_list_addref, _zend_list_delete, _zend_list_find, @@ -21,8 +27,10 @@ _zval_dtor, _zval_ptr_dtor, add_assoc_bool_ex, +add_assoc_double_ex add_assoc_long_ex, add_assoc_zval_ex, +add_index_bool, add_index_null, add_index_long, add_index_zval, @@ -32,13 +40,17 @@ add_index_string, add_index_stringl, add_next_index_bool, +add_next_index_double, add_next_index_long, add_next_index_string, add_next_index_stringl, add_next_index_zval, add_property_long_ex, +add_property_resource_ex, add_property_string_ex, call_user_function, +call_user_function_ex, +cfg_get_long, compiler_globals_id, convert_to_boolean, convert_to_array, @@ -56,19 +68,23 @@ le_index_ptr, module_registry, multi_convert_to_long_ex, +OnUpdateBool, +OnUpdateLong, +OnUpdateString, +OnUpdateStringUnempty, open_file_for_scanning, php_addslashes, +php_body_write, php_check_open_basedir, php_checkuid, -php_execute_script, -php_fopen_primary_script, -php_handle_aborted_connection, -php_handle_special_queries, -php_body_write, php_end_ob_buffers, php_error_docref0, +php_execute_script, +php_fopen_primary_script, php_get_current_user, php_get_highlight_struct, +php_handle_aborted_connection, +php_handle_special_queries, php_handle_auth_data, php_header, php_header_write, @@ -116,18 +132,27 @@ sapi_startup, second_arg_force_ref, ts_allocate_id, +ts_free_thread, ts_resource_ex, tsrm_shutdown, tsrm_startup, virtual_filepath, virtual_fopen, +virtual_open, +virtual_stat, zend_alter_ini_entry, +zend_call_function, zend_error, zend_eval_string, +zend_exception_get_default, zend_execute_scripts, zend_extensions, +zend_fetch_class, zend_fetch_resource, +zend_get_class_entry, +zend_get_parameters, zend_get_parameters_ex, +zend_get_parameters_array_ex, zend_hash_add_or_update, zend_hash_apply, zend_hash_apply_with_argument, @@ -157,6 +182,7 @@ zend_llist_destroy, zend_llist_init, zend_load_extension, +zend_merge_properties, zend_parse_parameters, zend_parse_parameters_ex, zend_printf, @@ -165,13 +191,13 @@ zend_register_list_destructors_ex, zend_register_long_constant, zend_register_resource, +zend_register_string_constant, zend_startup_module, zend_standard_class_def, +zend_throw_exception, +zend_throw_exception_ex, zend_strip, zend_unregister_ini_entries, zend_wrong_param_count, zval_add_ref, -OnUpdateBool, -OnUpdateLong, -OnUpdateString, -OnUpdateStringUnempty +zend_is_callable Index: netware/phplib.mak =================================================================== RCS file: /repository/php-src/netware/phplib.mak,v retrieving revision 1.6 diff -u -r1.6 phplib.mak --- netware/phplib.mak 17 Jan 2004 13:00:00 -0000 1.6 +++ netware/phplib.mak 3 Feb 2004 07:27:04 -0000 @@ -5,7 +5,7 @@ # Module details MODULE_NAME = phplib MODULE_DESC = "PHP 5 - Script Interpreter and Library" -VMAJ = 3 +VMAJ = 1 VMIN = 0 VREV = 0 @@ -58,6 +58,7 @@ ext/pcre/pcrelib/get.c \ ext/pcre/pcrelib/maketables.c \ ext/pcre/pcrelib/pcre.c \ + ext/pcre/pcrelib/pcregrep.c \ ext/pcre/pcrelib/pcreposix.c \ ext/pcre/pcrelib/study.c \ ext/session/mod_files.c \ @@ -65,7 +66,6 @@ ext/session/mod_user.c \ ext/session/session.c \ ext/snmp/snmp.c \ - ext/standard/aggregation.c \ ext/standard/array.c \ ext/standard/assert.c \ ext/standard/base64.c \ @@ -90,6 +90,7 @@ ext/standard/ftp_fopen_wrapper.c \ ext/standard/head.c \ ext/standard/html.c \ + ext/standard/http.c \ ext/standard/http_fopen_wrapper.c \ ext/standard/image.c \ ext/standard/incomplete_class.c \ @@ -107,27 +108,31 @@ ext/standard/pageinfo.c \ ext/standard/parsedate.c \ ext/standard/php_fopen_wrapper.c \ + ext/standard/proc_open.c \ ext/standard/quot_print.c \ ext/standard/rand.c \ ext/standard/reg.c \ ext/standard/scanf.c \ ext/standard/sha1.c \ ext/standard/soundex.c \ + ext/standard/streamsfuncs.c \ ext/standard/string.c \ ext/standard/strnatcmp.c \ + ext/standard/sunfuncs.c \ + ext/standard/syslog.c \ ext/standard/type.c \ ext/standard/uniqid.c \ ext/standard/url.c \ ext/standard/url_scanner.c \ ext/standard/url_scanner_ex.c \ ext/standard/user_filters.c \ + ext/standard/uuencode.c \ ext/standard/var.c \ ext/standard/var_unserializer.c \ ext/standard/versioning.c \ main/fopen_wrappers.c \ main/internal_functions_nw.c \ main/main.c \ - main/memory_streams.c \ main/mergesort.c \ main/network.c \ main/output.c \ @@ -135,6 +140,7 @@ main/php_ini.c \ main/php_logos.c \ main/php_open_temporary_file.c \ + main/php_scandir.c \ main/php_sprintf.c \ main/php_ticks.c \ main/php_variables.c \ @@ -144,10 +150,17 @@ main/SAPI.c \ main/snprintf.c \ main/spprintf.c \ - main/streams.c \ main/strlcat.c \ main/strlcpy.c \ - main/user_streams.c \ + main/streams/cast.c \ + main/streams/filter.c \ + main/streams/memory.c \ + main/streams/mmap.c \ + main/streams/plain_wrapper.c \ + main/streams/streams.c \ + main/streams/transports.c \ + main/streams/userspace.c \ + main/streams/xp_socket.c \ netware/geterrnoptr.c \ netware/mktemp.c \ netware/pipe.c \ @@ -159,16 +172,13 @@ regex/regerror.c \ regex/regexec.c \ regex/regfree.c \ -# ext/standard/crypt.c \ # ext/com/COM.c \ # ext/com/conversion.c \ # ext/odbc/php_odbc.c \ # ext/snmp/winsnmp.c \ -# netware/winutil.c \ -# netware/registry.c \ -# main/alloca.c \ +# ext/standard/crypt.c \ # ext/wddx/wddx.c \ -# netware/readdir.c \ +# main/alloca.c \ WIN32_C_SRC = sendmail.c \ @@ -201,21 +211,31 @@ C_FLAGS += -nostdinc -nosyspath C_FLAGS += -DNETWARE -D__BIT_TYPES_DEFINED__ -DZTS C_FLAGS += -DPHP5DLLTS_EXPORTS -DPHP_EXPORTS -DLIBZEND_EXPORTS -DTSRM_EXPORTS -DSAPI_EXPORTS -C_FLAGS += -DHAVE_SYS_TIME_H -DHAVE_STRUCT_FLOCK -DVIRTUAL_DIR -DHAVE_TZNAME -C_FLAGS += -DHAVE_DLFCN_H -DHAVE_LIBDL -C_FLAGS += -DCLIB_STAT_PATCH # stat patch +C_FLAGS += -DHAVE_SYS_TIME_H=1 -DHAVE_STRUCT_FLOCK=1 -DVIRTUAL_DIR=1 -DHAVE_TZNAME=1 C_FLAGS += -DNEW_LIBC -DHAVE_ARPA_INET_H=1 -DHAVE_NETINET_IN_H=1 -DHAVE_INET_ATON=1 +# These are required to use dlclose so that the PHP extensions are automatically unloaded +# when apache is unloaded +C_FLAGS += -DHAVE_DLFCN_H=1 -DHAVE_LIBDL=1 + C_FLAGS += -DLINK_SIZE=2 # Added for the new definition in ext\pcre\pcrelib\internal.h + # Below added for the file ext\pcre\pcrelib\pcreposix.c and # the default value is what is defined in the changelog file C_FLAGS += -DPOSIX_MALLOC_THRESHOLD=5 +ifeq '$(APACHE_VER)' '1.3' +C_FLAGS += -DAPACHE_1_BUILD=1 +endif +ifeq '$(APACHE_VER)' '2' +C_FLAGS += -DAPACHE_2_BUILD=1 +endif + C_FLAGS += -I. -Imain -Inetware -Iregex -IZend -ITSRM C_FLAGS += -Iext/standard -Iext/mcal -Iext/pcre -Iext/pcre/pcrelib C_FLAGS += -Iext/bcmath -Iext/bcmath/libbcmath/src C_FLAGS += -Iext/odbc -Iext/session -Iext/ftp -Iext/wddx -Iext/calendar -Iext/snmp -C_FLAGS += -I- -Inetware -I$(SDK_DIR)/include -I$(MWCIncludes) # netware added for special SYS/STAT.H : Venkat(6/2/02) +C_FLAGS += -I- -Inetware -I$(SDK_DIR)/include -I$(MWCIncludes) # netware added for special SYS/STAT.H C_FLAGS += -Iwin32 C_FLAGS += -I$(SDK_DIR)/include/winsock # Added for socket calls @@ -228,7 +248,7 @@ LD_FLAGS += -sym codeview4 -sym internal -osym $(SYM_FILE) export MWLibraryFiles=$(SDK_DIR)/imports/libcpre.o;mwcrtl.lib else - C_FLAGS += -opt speed -inline on -inline auto -sym off -DZEND_DEBUG=0 + C_FLAGS += -opt all -inline on -inline auto -sym off -DZEND_DEBUG=0 LD_FLAGS += -sym off export MWLibraryFiles=$(SDK_DIR)/imports/libcpre.o;mwcrtl.lib endif @@ -258,6 +278,7 @@ prebuild: @if not exist main\$(OBJ_DIR) md main\$(OBJ_DIR) @if not exist regex\$(OBJ_DIR) md regex\$(OBJ_DIR) + @if not exist bindlib_w32\$(OBJ_DIR) md bindlib_w32\$(OBJ_DIR) @if not exist netware\$(OBJ_DIR) md netware\$(OBJ_DIR) @if not exist ext\standard\$(OBJ_DIR) md ext\standard\$(OBJ_DIR) @if not exist ext\bcmath\$(OBJ_DIR) md ext\bcmath\$(OBJ_DIR) @@ -336,7 +357,9 @@ @echo $(wordlist 126, 130, $(OBJECTS)) >> $(basename $@).link @echo $(wordlist 131, 135, $(OBJECTS)) >> $(basename $@).link @echo $(wordlist 136, 140, $(OBJECTS)) >> $(basename $@).link - @echo $(wordlist 141, 141, $(OBJECTS)) >> $(basename $@).link + @echo $(wordlist 141, 145, $(OBJECTS)) >> $(basename $@).link + @echo $(wordlist 146, 150, $(OBJECTS)) >> $(basename $@).link + @echo $(wordlist 151, 155, $(OBJECTS)) >> $(basename $@).link @echo $(wordlist 1, 2, $(WIN32_OBJECTS)) >> $(basename $@).link @@ -351,6 +374,7 @@ @echo Deleting all dependency files... [EMAIL PROTECTED] "main\$(OBJ_DIR)\*.d" [EMAIL PROTECTED] "regex\$(OBJ_DIR)\*.d" + [EMAIL PROTECTED] "..\bindlib_w32\$(OBJ_DIR)\*.d" [EMAIL PROTECTED] "netware\$(OBJ_DIR)\*.d" [EMAIL PROTECTED] "ext\standard\$(OBJ_DIR)\*.d" [EMAIL PROTECTED] "ext\bcmath\$(OBJ_DIR)\*.d" @@ -377,6 +401,7 @@ @echo Deleting all object files... [EMAIL PROTECTED] "main\$(OBJ_DIR)\*.obj" [EMAIL PROTECTED] "regex\$(OBJ_DIR)\*.obj" + [EMAIL PROTECTED] "..\bindlib_w32\$(OBJ_DIR)\*.obj" [EMAIL PROTECTED] "netware\$(OBJ_DIR)\*.obj" [EMAIL PROTECTED] "ext\standard\$(OBJ_DIR)\*.obj" [EMAIL PROTECTED] "ext\bcmath\$(OBJ_DIR)\*.obj" Index: netware/sendmail_nw.h =================================================================== RCS file: /repository/php-src/netware/sendmail_nw.h,v retrieving revision 1.1 diff -u -r1.1 sendmail_nw.h --- netware/sendmail_nw.h 3 Jan 2003 11:12:40 -0000 1.1 +++ netware/sendmail_nw.h 3 Feb 2004 07:27:04 -0000 @@ -1,12 +1,10 @@ #ifdef USE_WINSOCK -/*#include <ws2nlm.h>*/ #include <novsock2.h> #else #include <sys/socket.h> /* For struct sockaddr, 'PF_INET' and 'AF_INET' */ #include <netinet\in.h> /* For struct sockaddr_in */ #include <netdb.h> /* For struct hostent */ -/*#include <ws2name.h>*/ #endif /* USE_WINSOCK */ typedef int SOCKET; /* Borrowed from winsock\novsock2.h */ Index: netware/tsrm.mak =================================================================== RCS file: /repository/php-src/netware/tsrm.mak,v retrieving revision 1.3 diff -u -r1.3 tsrm.mak --- netware/tsrm.mak 3 Jan 2003 11:46:20 -0000 1.3 +++ netware/tsrm.mak 3 Feb 2004 07:27:04 -0000 @@ -31,7 +31,7 @@ endif # Compile flags -C_FLAGS = -c -maxerrors 25 -msgstyle gcc +C_FLAGS += -c -maxerrors 25 -msgstyle gcc C_FLAGS += -wchar_t on -bool on C_FLAGS += -processor Pentium C_FLAGS += -nostdinc @@ -39,8 +39,13 @@ C_FLAGS += -DZTS -DNETWARE -DHAVE_DIRENT_H=1 C_FLAGS += -DNEW_LIBC C_FLAGS += -DUSE_MKFIFO -C_FLAGS += -DCLIB_STAT_PATCH -#C_FLAGS += -DUSE_MPK # To use the LibC recursive mutex locking +C_FLAGS += -DVIRTUAL_DIR=1 + +ifeq '$(APACHE_VER)' '2' +C_FLAGS += -DPTHREADS +C_FLAGS += -DAPACHE_2_BUILD=1 +endif + C_FLAGS += -I. -I- -I../netware -I$(SDK_DIR)/include # ../netware added for special SYS/STAT.H C_FLAGS += -I$(MPK_DIR)/include1 C_FLAGS += -I$(MWCIncludes) @@ -56,7 +61,7 @@ LD_FLAGS += -sym codeview4 -sym internal export MWLibraryFiles=$(SDK_DIR)/imports/libcpre.o;mwcrtld.lib else - C_FLAGS += -opt speed -inline smart -inline auto -sym off -DTSRM_DEBUG=0 + C_FLAGS += -opt all -inline smart -inline auto -sym off -DTSRM_DEBUG=0 LD_FLAGS += -sym off export MWLibraryFiles=$(SDK_DIR)/imports/libcpre.o;mwcrtl.lib endif @@ -89,7 +94,6 @@ @echo Linking [EMAIL PROTECTED] @$(LINK) $(LD_FLAGS) $(OBJECTS) - .PHONY: clean clean: cleanobj cleanbin Index: netware/zend.mak =================================================================== RCS file: /repository/php-src/netware/zend.mak,v retrieving revision 1.3 diff -u -r1.3 zend.mak --- netware/zend.mak 3 Jan 2003 11:46:20 -0000 1.3 +++ netware/zend.mak 3 Feb 2004 07:27:04 -0000 @@ -15,9 +15,11 @@ C_SRC = zend.c \ zend_alloc.c \ zend_API.c \ + zend_arg_defs.c \ zend_builtin_functions.c \ zend_compile.c \ zend_constants.c \ + zend_default_classes.c \ zend_dynamic_array.c \ zend_execute.c \ zend_execute_API.c \ @@ -28,18 +30,27 @@ zend_ini.c \ zend_ini_parser.c \ zend_ini_scanner.c \ + zend_interfaces.c \ + zend_iterators.c \ zend_language_parser.c \ zend_language_scanner.c \ zend_list.c \ zend_llist.c \ + zend_mm.c \ zend_multibyte.c \ + zend_object_handlers.c \ + zend_objects.c \ + zend_objects_API.c \ zend_opcode.c \ zend_operators.c \ zend_ptr_stack.c \ zend_qsort.c \ + zend_reflection_api.c \ zend_sprintf.c \ zend_stack.c \ zend_static_allocator.c \ + zend_stream.c \ + zend_ts_hash.c \ zend_variables.c @@ -56,20 +67,25 @@ # Compile flags -C_FLAGS = -c -maxerrors 25 -msgstyle std +C_FLAGS += -c -maxerrors 25 -msgstyle std C_FLAGS += -wchar_t on -bool on C_FLAGS += -processor Pentium C_FLAGS += -nostdinc C_FLAGS += -relax_pointers # To remove type-casting errors C_FLAGS += -D__C9X_CMATH_INLINES_DEFINED C_FLAGS += -DNETWARE -DZTS -C_FLAGS += -DNEW_LIBC -C_FLAGS += -DCLIB_STAT_PATCH C_FLAGS += -DTHREAD_SWITCH # These are required to use dlclose so that the PHP extensions are automatically unloaded # when apache is unloaded -C_FLAGS += -DHAVE_DLFCN_H -DHAVE_LIBDL +C_FLAGS += -DHAVE_DLFCN_H=1 -DHAVE_LIBDL=1 + +ifeq '$(APACHE_VER)' '1.3' +C_FLAGS += -DAPACHE_1_BUILD=1 +endif +ifeq '$(APACHE_VER)' '2' +C_FLAGS += -DAPACHE_2_BUILD=1 +endif C_FLAGS += -I. -I- -I../netware -I$(SDK_DIR)/include # ../netware added for special SYS/STAT.H C_FLAGS += -I$(MWCIncludes) @@ -87,7 +103,7 @@ LD_FLAGS += -sym codeview4 -sym internal export MWLibraryFiles=$(SDK_DIR)/imports/libcpre.o;mwcrtld.lib else - C_FLAGS += -opt speed -inline on -inline auto -sym off + C_FLAGS += -opt all -inline on -inline auto -sym off C_FLAGS += -DZEND_DEBUG=0 LD_FLAGS += -sym off export MWLibraryFiles=$(SDK_DIR)/imports/libcpre.o;mwcrtl.lib @@ -155,4 +171,3 @@ cleanbin: @echo Deleting binary files... [EMAIL PROTECTED] "$(FINAL_DIR)\$(MODULE_NAME).lib" - Index: sapi/apache/mod_php5.c =================================================================== RCS file: /repository/php-src/sapi/apache/mod_php5.c,v retrieving revision 1.7 diff -u -r1.7 mod_php5.c --- sapi/apache/mod_php5.c 8 Jan 2004 08:18:03 -0000 1.7 +++ sapi/apache/mod_php5.c 3 Feb 2004 07:27:06 -0000 @@ -825,21 +825,45 @@ static int php_xbithack_handler(request_rec * r) { HashTable *per_dir_conf; +#ifndef NETWARE + /* Anantha Kesari 21 Jan 2004 + * Further comments given below. + */ TSRMLS_FETCH(); +#endif if (!(r->finfo.st_mode & S_IXUSR)) { r->allowed |= (1 << METHODS) - 1; return DECLINED; } - per_dir_conf = (HashTable *) get_module_config(r->per_dir_config, &php5_module); - if (per_dir_conf) { - zend_hash_apply((HashTable *) per_dir_conf, (apply_func_t) php_apache_alter_ini_entries TSRMLS_CC); - } - if(!AP(xbithack)) { - r->allowed |= (1 << METHODS) - 1; - return DECLINED; +#ifdef NETWARE + /* Anantha Kesari 21 Jan 2004 + * + * TSRMLS_FETCH() allocates memory. + * What was happening here is that even for HTML pages, + * TSRMLS_FETCH() was being called and it allocated memory. + * But for HTML pages, request is not served and this memory + * is not freed since it returns DECLINED before it comes + * to this stage. So, there was a memory leak even for + * HTML pages execution with PHP enabled. By putting TSRMLS_FETCH() + * below, this memory leak is avoided since this stage + * is reached only if it is a PHP script and not just a HTML page. + */ + { + TSRMLS_FETCH(); +#endif + per_dir_conf = (HashTable *) get_module_config(r->per_dir_config, &php5_module); + if (per_dir_conf) { + zend_hash_apply((HashTable *) per_dir_conf, (apply_func_t) php_apache_alter_ini_entries TSRMLS_CC); + } + if(!AP(xbithack)) { + r->allowed |= (1 << METHODS) - 1; + return DECLINED; + } + return send_parsed_php(r); +#ifdef NETWARE } - return send_parsed_php(r); +#endif } /* }}} */ Index: sapi/apache/php_apache.c =================================================================== RCS file: /repository/php-src/sapi/apache/php_apache.c,v retrieving revision 1.86 diff -u -r1.86 php_apache.c --- sapi/apache/php_apache.c 8 Jan 2004 08:18:03 -0000 1.86 +++ sapi/apache/php_apache.c 3 Feb 2004 07:27:07 -0000 @@ -217,10 +217,9 @@ sprintf(output_buf, "Connection: %d - Keep-Alive: %d", serv->timeout, serv->keep_alive_timeout); php_info_print_table_row(2, "Timeouts", output_buf); #if !defined(WIN32) && !defined(WINNT) -/* - This block seems to be working on NetWare; But it seems to be showing - all modules instead of just the loaded ones -*/ + /* This block seems to be working on NetWare; But it seems to be showing + * all modules instead of just the loaded ones. + */ php_info_print_table_row(2, "Server Root", server_root); strcpy(modulenames, ""); Index: sapi/apache/php_apache_http.h =================================================================== RCS file: /repository/php-src/sapi/apache/php_apache_http.h,v retrieving revision 1.12 diff -u -r1.12 php_apache_http.h --- sapi/apache/php_apache_http.h 8 Jan 2004 17:33:15 -0000 1.12 +++ sapi/apache/php_apache_http.h 3 Feb 2004 07:27:07 -0000 @@ -27,7 +27,11 @@ #endif #ifdef NETWARE +#ifdef NEW_LIBC /* Works fine for both Winsock and Berkeley sockets */ #include <netinet/in.h> +#else +#include <sys/socket.h> +#endif #endif #include "zend.h" Index: sapi/apache2filter/sapi_apache2.c =================================================================== RCS file: /repository/php-src/sapi/apache2filter/sapi_apache2.c,v retrieving revision 1.121 diff -u -r1.121 sapi_apache2.c --- sapi/apache2filter/sapi_apache2.c 8 Jan 2004 08:18:04 -0000 1.121 +++ sapi/apache2filter/sapi_apache2.c 3 Feb 2004 07:27:07 -0000 @@ -31,10 +31,10 @@ #include "SAPI.h" #include "ext/standard/php_smart_str.h" -#ifndef NETWARE -#include "ext/standard/php_standard.h" -#else +#ifdef NETWARE #include "ext/standard/basic_functions.h" +#else +#include "ext/standard/php_standard.h" #endif #include "apr_strings.h" @@ -576,6 +576,21 @@ void *data = NULL; const char *userdata_key = "apache2filter_post_config"; +#ifndef NETWARE + /* Anantha Kesari 20 May 2003 */ + /* The code below is commented for NetWare since when Apache + * was reloaded, PHP is loaded twice. So to avoid loading of PHP twice, + * the logic below exits on the first load when data would be NULL. + * On second load, data would not be NULL and so PHP would be loaded fine. + * On Apache restart, PHP is loaded only once and that time also + * data would be NULL and it would return here without loading PHP. + * So, when we do apache restart and then execute a script, + * the server was abending. + * With this fix, PHP is loaded twice when Apache is reloaded for NetWare + * and only once when Apache is restarted. + * Only thing is that this would slow down the Apache loading process a little. + */ + /* Apache will load, unload and then reload a DSO module. This * prevents us from starting PHP until the second load. */ apr_pool_userdata_get(&data, userdata_key, s->process->pool); @@ -589,14 +604,19 @@ apr_pool_cleanup_null, s->process->pool); return OK; } +#endif /* NETWARE */ /* Set up our overridden path. */ if (apache2_php_ini_path_override) { apache2_sapi_module.php_ini_path_override = apache2_php_ini_path_override; } #ifdef ZTS +#ifdef NETWARE + tsrm_startup(250, 1, 0, NULL); /* 250 threads */ +#else tsrm_startup(1, 1, 0, NULL); #endif +#endif sapi_startup(&apache2_sapi_module); apache2_sapi_module.startup(&apache2_sapi_module); apr_pool_cleanup_register(pconf, NULL, php_apache_server_shutdown, apr_pool_cleanup_null); @@ -634,6 +654,31 @@ if (r->content_type && !strncmp(r->content_type, "application/x-httpd-php", content_type_len-1)) { if (r->content_type[content_type_len] == '\0' || !strncmp(r->content_type+content_type_len, "-source", sizeof("-source"))) { +#if defined(NETWARE) && defined(ZTS) + /* Srivathsa / Anantha Kesari 5 Dec 2003 + * Do this only for PHP scripts and not for others. + * For non-PHP pages, this loop will not be entered. + * For more details, see the comments in php_post_read_request function. + */ + + php_struct *ctx; + TSRMLS_FETCH(); + + /* Initialize filter context */ + SG(server_context) = ctx = apr_pcalloc(r->pool, sizeof(*ctx)); + + /* register a cleanup so we clear out the SG(server_context) + * after each request. Note: We pass in the pointer to the + * server_context in case this is handled by a different thread. */ + apr_pool_cleanup_register(r->pool, (void *)&SG(server_context), + php_server_context_cleanup, + apr_pool_cleanup_null); + + /* Save the entire request, so we can get the input or output + * filters if we need them. */ + ctx->r = r; +#endif + php_add_filter(r, r->output_filters); php_add_filter(r, r->input_filters); } @@ -649,6 +694,19 @@ static int php_post_read_request(request_rec *r) { +#ifndef NETWARE + /* Srivathsa / Anantha Kesari 5 Dec 2003 + * The below code was being executed even when only the html page + * was requested. When compiled with ZTS option, PHP is designed NOT + * to free memory but keep it, so that next requests can reuse them. + * This is done for improving performance. Now even for html pages, + * memory was being allocated through TSRMLS_FETCH() call below + * and this was not freed since PHP for NetWare is compiled with ZTS option. + * This would cause memory leak even for non-PHP pages. + * So, we have commented this portion and put this portion into + * php_insert_filter function where PHP scripts are invoked. + */ + php_struct *ctx; TSRMLS_FETCH(); @@ -665,6 +723,7 @@ /* Save the entire request, so we can get the input or output * filters if we need them. */ ctx->r = r; +#endif return OK; } Index: sapi/apache2handler/sapi_apache2.c =================================================================== RCS file: /repository/php-src/sapi/apache2handler/sapi_apache2.c,v retrieving revision 1.32 diff -u -r1.32 sapi_apache2.c --- sapi/apache2handler/sapi_apache2.c 8 Jan 2004 08:18:05 -0000 1.32 +++ sapi/apache2handler/sapi_apache2.c 3 Feb 2004 07:27:08 -0000 @@ -31,10 +31,10 @@ #include <fcntl.h> #include "ext/standard/php_smart_str.h" -#ifndef NETWARE -#include "ext/standard/php_standard.h" -#else +#ifdef NETWARE #include "ext/standard/basic_functions.h" +#else +#include "ext/standard/php_standard.h" #endif #include "apr_strings.h" Index: win32/sendmail.c =================================================================== RCS file: /repository/php-src/win32/sendmail.c,v retrieving revision 1.59 diff -u -r1.59 sendmail.c --- win32/sendmail.c 8 Dec 2003 22:10:42 -0000 1.59 +++ win32/sendmail.c 3 Feb 2004 07:27:11 -0000 @@ -1,5 +1,5 @@ /* - * PHP Sendmail for Windows. + * PHP Sendmail for Windows and NetWare. * * This file is rewriten specificly for PHPFI. Some functionality * has been removed (MIME and file attachments). This code was @@ -97,7 +97,7 @@ #ifndef NETWARE char *php_mailer = "PHP 4 WIN32"; #else -char *php_mailer = "PHP 4 NetWare"; +char *php_mailer = "PHP 5 NetWare"; #endif /* NETWARE */ char *get_header(char *h, char *headers);
-- PHP Internals - PHP Runtime Development Mailing List To unsubscribe, visit: http://www.php.net/unsub.php