Applied, but this needs to be double-checked on Netware. > wrowe 01/12/27 21:03:08 > > Modified: src ApacheCore.def > src/ap ap_snprintf.c > src/include ap.h ap_alloc.h buff.h http_conf_globals.h > http_config.h http_core.h http_log.h http_main.h > http_protocol.h http_request.h http_vhost.h httpd.h > rfc1413.h > src/main alloc.c buff.c http_config.c http_core.c http_log.c > http_main.c http_protocol.c http_request.c > http_vhost.c rfc1413.c util.c > src/os/netware ApacheCore.imp > Log: > Normalize symbol exports for Win32/Netware to the httpd.exp reference. > Diff tags pre_win_nw_syms/post_win_nw_syms for complete edit. > > Note I've corrected _SEVERAL_ badly declared symbols on Win32 into > API_EXPORT_NONSTD flavors (e.g. those using (...) args). This may, > or may not, break binary compatibility depending on how those args > are addressed, and if those functions were used. > > I've further tested by setting aside the .def file and rebuilding, > and validated that our symbols list corresponds to the API_DECLARE() > macros at this moment. > > Submitted by: Thomas Eibner <[EMAIL PROTECTED]> > Reviewed by: Stoddard, Rowe
Here is the list of badly declared, now _NONSTD functions (with a list like this, I'm afraid much binary compatibility will be lost); -API_EXPORT(int) ap_snprintf(char *buf, size_t len, const char *format,...) +API_EXPORT_NONSTD(int) ap_snprintf(char *buf, size_t len, const char *format,...) -API_EXPORT(void) ap_table_do(int (*comp) (void *, const char *, const char *), void *rec, - const table *t,...); +API_EXPORT_NONSTD(void) ap_table_do(int (*comp) (void *, const char *, const char *), + void *rec, const table *t,...); -API_EXPORT(int) ap_bvputs(BUFF *fb,...); +API_EXPORT_NONSTD(int) ap_bvputs(BUFF *fb,...); -API_EXPORT(int) ap_rprintf(request_rec *r, const char *fmt,...) +API_EXPORT_NONSTD(int) ap_rprintf(request_rec *r, const char *fmt,...) -API_EXPORT(void) ap_log_error(const char *file, int line, int level, +API_EXPORT_NONSTD(void) ap_log_error(const char *file, int line, int level, const server_rec *s, const char *fmt, ...) -API_EXPORT(void) ap_log_rerror(const char *file, int line, int level, +API_EXPORT_NONSTD(void) ap_log_rerror(const char *file, int line, int level, const request_rec *s, const char *fmt, ...) -API_EXPORT(void) ap_log_printf(const server_rec *s, const char *fmt, ...) +API_EXPORT_NONSTD(void) ap_log_printf(const server_rec *s, const char *fmt, ...) And finally, here is a list of the differences remaining between httpd.exp and the win32 exported symbols. I'm posting the list mostly because someone might want to go back over httpd.exp, since some win32 inclusions should fall in the httpd.exp list. Also, there are a few more missing symbols in the win32 list yet to be fixed. --- httpd.exp Thu Dec 27 23:07:54 2001 +++ declared.ref Thu Dec 27 23:45:46 2001 +access_module +alias_module +ap_acquire_mutex +ap_add_loaded_module +ap_bpushh +ap_check_alarm -ap_child_terminate +ap_create_mutex +ap_destroy_mutex -ap_dummy_mutex +ap_get_limit_req_body +ap_get_service_key +ap_get_win32_interpreter -ap_listeners +ap_loaded_modules +ap_md5_binary +ap_note_cleanups_for_h +ap_open_mutex +ap_os_canonical_filename +ap_os_case_canonical_filename +ap_os_dso_error +ap_os_dso_load -ap_os_is_path_absolute +ap_os_is_filename_valid +ap_os_systemcase_filename +ap_pcloseh -ap_prelinked_modules -ap_preloaded_modules -ap_register_other_child +ap_registry_get_server_root +ap_release_mutex +ap_remove_loaded_module -ap_rfc1413_timeout +ap_scan_script_header_err_core -ap_signal -ap_slack -ap_sys_siglist -ap_unregister_other_child -ap_util_init -ap_util_uri_init +ap_uuencode +apache_main +asis_module +auth_module +autoindex_module +cgi_module +closedir +config_log_module +dir_module +env_module +imap_module +includes_module +mime_module +negotiation_module +opendir +os_spawnle +os_spawnv +os_spawnve +os_stat +os_strftime +readdir +regcomp +regerror +regexec +regfree +setenvif_module +so_module -XML_DefaultCurrent -XML_ErrorString -XML_ExternalEntityParserCreate -XML_GetBase -XML_GetBuffer -XML_GetCurrentByteCount -XML_GetCurrentByteIndex -XML_GetCurrentColumnNumber -XML_GetCurrentLineNumber -XML_GetErrorCode -XML_GetSpecifiedAttributeCount -XML_Parse -XML_ParseBuffer -XML_ParserCreate -XML_ParserCreateNS -XML_ParserFree -XML_SetBase -XML_SetCdataSectionHandler -XML_SetCharacterDataHandler -XML_SetCommentHandler -XML_SetDefaultHandler -XML_SetDefaultHandlerExpand -XML_SetElementHandler -XML_SetEncoding -XML_SetExternalEntityRefHandler -XML_SetExternalEntityRefHandlerArg -XML_SetNamespaceDeclHandler -XML_SetNotationDeclHandler -XML_SetNotStandaloneHandler -XML_SetProcessingInstructionHandler -XML_SetUnknownEncodingHandler -XML_SetUnparsedEntityDeclHandler -XML_SetUserData -XML_UseParserAsHandlerArg