diff options
Diffstat (limited to 'extra')
-rw-r--r-- | extra/.cvsignore | 10 | ||||
-rw-r--r--[-rwxr-xr-x] | extra/CMakeLists.txt | 86 | ||||
-rw-r--r-- | extra/Makefile.am | 60 | ||||
-rw-r--r-- | extra/comp_err.c | 71 | ||||
-rw-r--r-- | extra/my_print_defaults.c | 13 | ||||
-rw-r--r-- | extra/mysql_waitpid.c | 14 | ||||
-rw-r--r-- | extra/perror.c | 56 | ||||
-rw-r--r-- | extra/replace.c | 33 | ||||
-rw-r--r-- | extra/resolve_stack_dump.c | 5 | ||||
-rw-r--r-- | extra/resolveip.c | 3 | ||||
-rw-r--r--[-rwxr-xr-x] | extra/yassl/CMakeLists.txt | 32 | ||||
-rw-r--r-- | extra/yassl/Makefile.am | 20 | ||||
-rw-r--r-- | extra/yassl/include/yassl_int.hpp | 3 | ||||
-rw-r--r-- | extra/yassl/src/Makefile.am | 27 | ||||
-rw-r--r-- | extra/yassl/src/socket_wrapper.cpp | 2 | ||||
-rw-r--r--[-rwxr-xr-x] | extra/yassl/taocrypt/CMakeLists.txt | 17 | ||||
-rw-r--r-- | extra/yassl/taocrypt/Makefile.am | 20 | ||||
-rw-r--r-- | extra/yassl/taocrypt/benchmark/Makefile.am | 24 | ||||
-rw-r--r-- | extra/yassl/taocrypt/include/misc.hpp | 2 | ||||
-rw-r--r-- | extra/yassl/taocrypt/src/Makefile.am | 33 | ||||
-rw-r--r-- | extra/yassl/taocrypt/src/random.cpp | 61 | ||||
-rw-r--r-- | extra/yassl/taocrypt/test/Makefile.am | 24 | ||||
-rw-r--r-- | extra/yassl/testsuite/Makefile.am | 29 | ||||
-rw-r--r-- | extra/yassl/testsuite/test.hpp | 9 |
24 files changed, 213 insertions, 441 deletions
diff --git a/extra/.cvsignore b/extra/.cvsignore deleted file mode 100644 index e0042c405cc..00000000000 --- a/extra/.cvsignore +++ /dev/null @@ -1,10 +0,0 @@ -.deps -.libs -Makefile -Makefile.in -comp_err -my_print_defaults -perror -print_defaults -replace -resolveip diff --git a/extra/CMakeLists.txt b/extra/CMakeLists.txt index cec0db6a4ae..a569641a198 100755..100644 --- a/extra/CMakeLists.txt +++ b/extra/CMakeLists.txt @@ -1,4 +1,4 @@ -# Copyright (C) 2006 MySQL AB +# Copyright (c) 2006, 2010, Oracle and/or its affiliates. All rights reserved. # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by @@ -11,45 +11,71 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA -INCLUDE("${PROJECT_SOURCE_DIR}/win/mysql_manifest.cmake") +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA -SET(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} -DSAFEMALLOC -DSAFE_MUTEX") -SET(CMAKE_C_FLAGS_DEBUG "${CMAKE_C_FLAGS_DEBUG} -DSAFEMALLOC -DSAFE_MUTEX") +INCLUDE_DIRECTORIES( +${CMAKE_SOURCE_DIR}/include +${ZLIB_INCLUDE_DIR} +# Following is for perror, in case NDB is compiled in. +${CMAKE_SOURCE_DIR}/storage/ndb/include +${CMAKE_SOURCE_DIR}/storage/ndb/include/util +${CMAKE_SOURCE_DIR}/storage/ndb/include/ndbapi +${CMAKE_SOURCE_DIR}/storage/ndb/include/portlib +${CMAKE_SOURCE_DIR}/storage/ndb/include/mgmapi) -INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/include) +# Default install component for the files is Server here +SET(MYSQL_INSTALL_COMPONENT Server) -ADD_EXECUTABLE(comp_err comp_err.c) -TARGET_LINK_LIBRARIES(comp_err debug dbug mysys strings zlib wsock32) +IF(NOT CMAKE_CROSSCOMPILING) + ADD_EXECUTABLE(comp_err comp_err.c) + TARGET_LINK_LIBRARIES(comp_err mysys) +ENDIF() -GET_TARGET_PROPERTY(COMP_ERR_EXE comp_err LOCATION) - -ADD_CUSTOM_COMMAND(OUTPUT ${PROJECT_SOURCE_DIR}/include/mysqld_error.h - COMMAND ${COMP_ERR_EXE} +ADD_CUSTOM_COMMAND(OUTPUT ${PROJECT_BINARY_DIR}/include/mysqld_error.h + ${PROJECT_BINARY_DIR}/sql/share/english/errmsg.sys + COMMAND comp_err --charset=${PROJECT_SOURCE_DIR}/sql/share/charsets - --out-dir=${PROJECT_SOURCE_DIR}/sql/share/ - --header_file=${PROJECT_SOURCE_DIR}/include/mysqld_error.h - --name_file=${PROJECT_SOURCE_DIR}/include/mysqld_ername.h - --state_file=${PROJECT_SOURCE_DIR}/include/sql_state.h - --in_file=${PROJECT_SOURCE_DIR}/sql/share/errmsg.txt - DEPENDS comp_err ${PROJECT_SOURCE_DIR}/sql/share/errmsg.txt) + --out-dir=${PROJECT_BINARY_DIR}/sql/share/ + --header_file=${PROJECT_BINARY_DIR}/include/mysqld_error.h + --name_file=${PROJECT_BINARY_DIR}/include/mysqld_ername.h + --state_file=${PROJECT_BINARY_DIR}/include/sql_state.h + --in_file=${PROJECT_SOURCE_DIR}/sql/share/errmsg-utf8.txt + DEPENDS ${PROJECT_SOURCE_DIR}/sql/share/errmsg-utf8.txt + ${CMAKE_CURRENT_SOURCE_DIR}/comp_err.c) ADD_CUSTOM_TARGET(GenError ALL - DEPENDS ${PROJECT_SOURCE_DIR}/include/mysqld_error.h) + DEPENDS + ${PROJECT_BINARY_DIR}/include/mysqld_error.h + ${PROJECT_BINARY_DIR}/sql/share/english/errmsg.sys + ${PROJECT_SOURCE_DIR}/sql/share/errmsg-utf8.txt) + +MYSQL_ADD_EXECUTABLE(my_print_defaults my_print_defaults.c) +TARGET_LINK_LIBRARIES(my_print_defaults mysys) + +MYSQL_ADD_EXECUTABLE(perror perror.c) +ADD_DEPENDENCIES(perror GenError) +TARGET_LINK_LIBRARIES(perror mysys) + +MYSQL_ADD_EXECUTABLE(resolveip resolveip.c) +TARGET_LINK_LIBRARIES(resolveip mysys) +IF(CMAKE_SYSTEM_NAME STREQUAL "SunOS") + INCLUDE(CheckFunctionExists) + INCLUDE(CheckLibraryExists) + MY_SEARCH_LIBS(inet_aton "nsl;socket;resolv" SOLARIS_NSL) + TARGET_LINK_LIBRARIES(resolveip ${SOLARIS_NSL}) +ENDIF() -ADD_EXECUTABLE(my_print_defaults my_print_defaults.c) -TARGET_LINK_LIBRARIES(my_print_defaults strings mysys debug dbug taocrypt wsock32) -ADD_EXECUTABLE(perror perror.c) -TARGET_LINK_LIBRARIES(perror strings mysys debug dbug wsock32) +MYSQL_ADD_EXECUTABLE(replace replace.c) +TARGET_LINK_LIBRARIES(replace mysys) +IF(UNIX) + MYSQL_ADD_EXECUTABLE(innochecksum innochecksum.c) -ADD_EXECUTABLE(resolveip resolveip.c) -TARGET_LINK_LIBRARIES(resolveip strings mysys debug dbug wsock32) + MYSQL_ADD_EXECUTABLE(resolve_stack_dump resolve_stack_dump.c) + TARGET_LINK_LIBRARIES(resolve_stack_dump mysys) -ADD_EXECUTABLE(replace replace.c) -TARGET_LINK_LIBRARIES(replace strings mysys debug dbug wsock32) + MYSQL_ADD_EXECUTABLE(mysql_waitpid mysql_waitpid.c) + TARGET_LINK_LIBRARIES(mysql_waitpid mysys) +ENDIF() -IF(EMBED_MANIFESTS) - MYSQL_EMBED_MANIFEST("myTest" "asInvoker") -ENDIF(EMBED_MANIFESTS) diff --git a/extra/Makefile.am b/extra/Makefile.am deleted file mode 100644 index 75422c4ee11..00000000000 --- a/extra/Makefile.am +++ /dev/null @@ -1,60 +0,0 @@ -# Copyright (C) 2000-2006 MySQL AB -# -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; version 2 of the License. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - -INCLUDES = -I$(top_builddir)/include -I$(top_srcdir)/include \ - -I$(top_srcdir)/sql -LDADD = @CLIENT_EXTRA_LDFLAGS@ ../mysys/libmysys.a \ - ../dbug/libdbug.a ../strings/libmystrings.a \ - $(ZLIB_LIBS) -BUILT_SOURCES= $(top_builddir)/include/mysqld_error.h \ - $(top_builddir)/include/sql_state.h \ - $(top_builddir)/include/mysqld_ername.h -pkginclude_HEADERS= $(BUILT_SOURCES) -DISTCLEANFILES = $(BUILT_SOURCES) -SUBDIRS = @yassl_dir@ -DIST_SUBDIRS = yassl - -# This will build mysqld_error.h, mysqld_ername.h and sql_state.h -# NOTE Built files should depend on their sources to avoid -# the built files being rebuilt in source dist -$(top_builddir)/include/mysqld_error.h: comp_err.c \ - $(top_srcdir)/sql/share/errmsg.txt - $(MAKE) $(AM_MAKEFLAGS) comp_err$(EXEEXT) - $(top_builddir)/extra/comp_err$(EXEEXT) \ - --charset=$(top_srcdir)/sql/share/charsets \ - --out-dir=$(top_builddir)/sql/share/ \ - --header_file=$(top_builddir)/include/mysqld_error.h \ - --name_file=$(top_builddir)/include/mysqld_ername.h \ - --state_file=$(top_builddir)/include/sql_state.h \ - --in_file=$(top_srcdir)/sql/share/errmsg.txt -$(top_builddir)/include/mysqld_ername.h: $(top_builddir)/include/mysqld_error.h -$(top_builddir)/include/sql_state.h: $(top_builddir)/include/mysqld_error.h - -bin_PROGRAMS = replace perror resolveip my_print_defaults \ - resolve_stack_dump mysql_waitpid -# "innochecksum" should be switched -if BUILD_INNODB_TOOLS -bin_PROGRAMS += innochecksum -endif - -noinst_PROGRAMS = charset2html -EXTRA_PROGRAMS = comp_err -EXTRA_DIST = CMakeLists.txt - -perror.o: perror.c - $(COMPILE) @ndbcluster_includes@ $(LM_CFLAGS) -c $< - -# Don't update the files from bitkeeper -%::SCCS/s.% diff --git a/extra/comp_err.c b/extra/comp_err.c index 7e0b47a7dc7..9f7b47a1a1e 100644 --- a/extra/comp_err.c +++ b/extra/comp_err.c @@ -39,7 +39,7 @@ static char *OUTFILE= (char*) "errmsg.sys"; static char *HEADERFILE= (char*) "mysqld_error.h"; static char *NAMEFILE= (char*) "mysqld_ername.h"; static char *STATEFILE= (char*) "sql_state.h"; -static char *TXTFILE= (char*) "../sql/share/errmsg.txt"; +static char *TXTFILE= (char*) "../sql/share/errmsg-utf8.txt"; static char *DATADIRECTORY= (char*) "../sql/share/"; #ifndef DBUG_OFF static char *default_dbug_option= (char*) "d:t:O,/tmp/comp_err.trace"; @@ -197,13 +197,35 @@ int main(int argc, char *argv[]) } +static void print_escaped_string(FILE *f, const char *str) +{ + const char *tmp = str; + + while (tmp[0] != 0) + { + switch (tmp[0]) + { + case '\\': fprintf(f, "\\\\"); break; + case '\'': fprintf(f, "\\\'"); break; + case '\"': fprintf(f, "\\\""); break; + case '\n': fprintf(f, "\\n"); break; + case '\r': fprintf(f, "\\r"); break; + default: fprintf(f, "%c", tmp[0]); + } + tmp++; + } +} + + static int create_header_files(struct errors *error_head) { - uint er_last; + uint er_last= 0; FILE *er_definef, *sql_statef, *er_namef; struct errors *tmp_error; + struct message *er_msg; + const char *er_text; + DBUG_ENTER("create_header_files"); - LINT_INIT(er_last); if (!(er_definef= my_fopen(HEADERFILE, O_WRONLY, MYF(MY_WME)))) { @@ -243,9 +265,12 @@ static int create_header_files(struct errors *error_head) "{ %-40s,\"%s\", \"%s\" },\n", tmp_error->er_name, tmp_error->sql_code1, tmp_error->sql_code2); /*generating er_name file */ - fprintf(er_namef, "{ \"%s\", %d },\n", tmp_error->er_name, - tmp_error->d_code); - + er_msg= find_message(tmp_error, default_language, 0); + er_text = (er_msg ? er_msg->text : ""); + fprintf(er_namef, "{ \"%s\", %d, \"", tmp_error->er_name, + tmp_error->d_code); + print_escaped_string(er_namef, er_text); + fprintf(er_namef, "\" },\n"); } /* finishing off with mysqld_error.h */ fprintf(er_definef, "#define ER_ERROR_LAST %d\n", er_last); @@ -361,15 +386,15 @@ static void clean_up(struct languages *lang_head, struct errors *error_head) struct errors *tmp_error, *next_error; uint count, i; - my_free((uchar*) default_language, MYF(0)); + my_free((void*) default_language); for (tmp_lang= lang_head; tmp_lang; tmp_lang= next_language) { next_language= tmp_lang->next_lang; - my_free(tmp_lang->lang_short_name, MYF(0)); - my_free(tmp_lang->lang_long_name, MYF(0)); - my_free(tmp_lang->charset, MYF(0)); - my_free((uchar*) tmp_lang, MYF(0)); + my_free(tmp_lang->lang_short_name); + my_free(tmp_lang->lang_long_name); + my_free(tmp_lang->charset); + my_free(tmp_lang); } for (tmp_error= error_head; tmp_error; tmp_error= next_error) @@ -380,17 +405,17 @@ static void clean_up(struct languages *lang_head, struct errors *error_head) { struct message *tmp; tmp= dynamic_element(&tmp_error->msg, i, struct message*); - my_free((uchar*) tmp->lang_short_name, MYF(0)); - my_free((uchar*) tmp->text, MYF(0)); + my_free(tmp->lang_short_name); + my_free(tmp->text); } delete_dynamic(&tmp_error->msg); if (tmp_error->sql_code1[0]) - my_free((uchar*) tmp_error->sql_code1, MYF(0)); + my_free((void*) tmp_error->sql_code1); if (tmp_error->sql_code2[0]) - my_free((uchar*) tmp_error->sql_code2, MYF(0)); - my_free((uchar*) tmp_error->er_name, MYF(0)); - my_free((uchar*) tmp_error, MYF(0)); + my_free((void*) tmp_error->sql_code2); + my_free((void*) tmp_error->er_name); + my_free(tmp_error); } } @@ -533,7 +558,7 @@ static uint parse_error_offset(char *str) end= 0; ioffset= (uint) my_strtoll10(soffset, &end, &error); - my_free((uchar*) soffset, MYF(0)); + my_free(soffset); DBUG_RETURN(ioffset); } @@ -658,7 +683,7 @@ static ha_checksum checksum_format_specifier(const char* msg) case 'u': case 'x': case 's': - chksum= my_checksum(chksum, start, (uint) (p + 1 - start)); + chksum= my_checksum(chksum, (uchar*) start, (uint) (p + 1 - start)); start= 0; /* Not in format specifier anymore */ break; @@ -1037,11 +1062,11 @@ static char *parse_text_line(char *pos) switch (*++pos) { case '\\': case '"': - VOID(memmove (pos - 1, pos, len - (row - pos))); + (void) memmove (pos - 1, pos, len - (row - pos)); break; case 'n': pos[-1]= '\n'; - VOID(memmove (pos, pos + 1, len - (row - pos))); + (void) memmove (pos, pos + 1, len - (row - pos)); break; default: if (*pos >= '0' && *pos < '8') @@ -1051,10 +1076,10 @@ static char *parse_text_line(char *pos) nr= nr * 8 + (*(pos++) - '0'); pos -= i; pos[-1]= nr; - VOID(memmove (pos, pos + i, len - (row - pos))); + (void) memmove (pos, pos + i, len - (row - pos)); } else if (*pos) - VOID(memmove (pos - 1, pos, len - (row - pos))); /* Remove '\' */ + (void) memmove (pos - 1, pos, len - (row - pos)); /* Remove '\' */ } } else diff --git a/extra/my_print_defaults.c b/extra/my_print_defaults.c index cc74208b783..25ec8beb59f 100644 --- a/extra/my_print_defaults.c +++ b/extra/my_print_defaults.c @@ -89,9 +89,6 @@ static struct my_option my_long_options[] = }; - -#include <help_start.h> - static void usage(my_bool version) { printf("%s Ver 1.6 for %s at %s\n",my_progname,SYSTEM_TYPE, @@ -107,8 +104,6 @@ static void usage(my_bool version) printf("\nExample usage:\n%s --defaults-file=example.cnf client mysql\n", my_progname); } -#include <help_end.h> - static my_bool get_one_option(int optid, const struct my_option *opt __attribute__((unused)), @@ -194,12 +189,14 @@ int main(int argc, char **argv) config_file); } error= 2; + exit(error); } for (argument= arguments+1 ; *argument ; argument++) - puts(*argument); - my_free((char*) load_default_groups,MYF(0)); + if (!my_getopt_is_args_separator(*argument)) /* skip arguments separator */ + puts(*argument); + my_free(load_default_groups); free_defaults(arguments); - exit(error); + exit(0); } diff --git a/extra/mysql_waitpid.c b/extra/mysql_waitpid.c index e5c06ac9857..d5c9f2f42ae 100644 --- a/extra/mysql_waitpid.c +++ b/extra/mysql_waitpid.c @@ -15,8 +15,6 @@ /* Wait until a program dies */ -#ifndef __NETWARE__ - #include <my_global.h> #include <m_string.h> #include <my_sys.h> @@ -103,15 +101,3 @@ void usage(void) my_print_help(my_long_options); exit(-1); } - -#else - -#include <stdio.h> - -main() -{ - fprintf(stderr,"This tool has not been ported to NetWare\n"); - return 0; -} - -#endif /* __NETWARE__ */ diff --git a/extra/perror.c b/extra/perror.c index c32ad2bc791..382805c5dfd 100644 --- a/extra/perror.c +++ b/extra/perror.c @@ -102,8 +102,6 @@ static HA_ERRORS ha_errlist[]= }; -#include <help_start.h> - static void print_version(void) { printf("%s Ver %s, for %s (%s)\n",my_progname,PERROR_VERSION, @@ -122,8 +120,6 @@ static void usage(void) my_print_variables(my_long_options); } -#include <help_end.h> - static my_bool get_one_option(int optid, const struct my_option *opt __attribute__((unused)), @@ -184,6 +180,45 @@ static const char *get_ha_error_msg(int code) return NullS; } +typedef struct +{ + const char *name; + uint code; + const char *text; +} st_error; + +static st_error global_error_names[] = +{ +#include <mysqld_ername.h> + { 0, 0, 0 } +}; + +/** + Lookup an error by code in the global_error_names array. + @param code the code to lookup + @param [out] name_ptr the error name, when found + @param [out] msg_ptr the error text, when found + @return 1 when found, otherwise 0 +*/ +int get_ER_error_msg(uint code, const char **name_ptr, const char **msg_ptr) +{ + st_error *tmp_error; + + tmp_error= & global_error_names[0]; + + while (tmp_error->name != NULL) + { + if (tmp_error->code == code) + { + *name_ptr= tmp_error->name; + *msg_ptr= tmp_error->text; + return 1; + } + tmp_error++; + } + + return 0; +} #if defined(__WIN__) static my_bool print_win_error_msg(DWORD error, my_bool verbose) @@ -211,6 +246,7 @@ int main(int argc,char *argv[]) { int error,code,found; const char *msg; + const char *name; char *unknown_error = 0; #if defined(__WIN__) my_bool skip_win_message= 0; @@ -229,7 +265,7 @@ int main(int argc,char *argv[]) HA_ERRORS *ha_err_ptr; for (code=1 ; code < sys_nerr ; code++) { - if (sys_errlist[code][0]) + if (sys_errlist[code] && sys_errlist[code][0]) { /* Skip if no error-text */ printf("%3d = %s\n",code,sys_errlist[code]); } @@ -241,7 +277,7 @@ int main(int argc,char *argv[]) #endif { /* - On some system, like NETWARE, strerror(unknown_error) returns a + On some system, like Linux, strerror(unknown_error) returns a string 'Unknown Error'. To avoid printing it we try to find the error string by asking for an impossible big error message. @@ -316,6 +352,14 @@ int main(int argc,char *argv[]) else puts(msg); } + if (get_ER_error_msg(code, & name, & msg)) + { + found= 1; + if (verbose) + printf("MySQL error code %3d (%s): %s\n", code, name, msg); + else + puts(msg); + } if (!found) { #if defined(__WIN__) diff --git a/extra/replace.c b/extra/replace.c index fd2d860c212..2ce374726eb 100644 --- a/extra/replace.c +++ b/extra/replace.c @@ -39,7 +39,6 @@ fill_buffer_retaining() is taken from gnu-grep and modified. */ -#define DONT_USE_RAID #include <my_global.h> #include <m_ctype.h> #include <my_sys.h> @@ -52,7 +51,7 @@ typedef struct st_pointer_array { /* when using array-strings */ TYPELIB typelib; /* Pointer to strings */ uchar *str; /* Strings is here */ - int7 *flag; /* Flag about each var. */ + uint8 *flag; /* Flag about each var. */ uint array_allocs,max_count,length,max_length; } POINTER_ARRAY; @@ -262,12 +261,12 @@ static int insert_pointer_name(reg1 POINTER_ARRAY *pa,char * name) if (!(pa->str= (uchar*) my_malloc((uint) (PS_MALLOC-MALLOC_OVERHEAD), MYF(MY_WME)))) { - my_free((uchar*) pa->typelib.type_names,MYF(0)); + my_free(pa->typelib.type_names); DBUG_RETURN (-1); } pa->max_count=(PC_MALLOC-MALLOC_OVERHEAD)/(sizeof(uchar*)+ sizeof(*pa->flag)); - pa->flag= (int7*) (pa->typelib.type_names+pa->max_count); + pa->flag= (uint8*) (pa->typelib.type_names+pa->max_count); pa->length=0; pa->max_length=PS_MALLOC-MALLOC_OVERHEAD; pa->array_allocs=1; @@ -304,14 +303,14 @@ static int insert_pointer_name(reg1 POINTER_ARRAY *pa,char * name) pa->typelib.type_names=new_array; old_count=pa->max_count; pa->max_count=len/(sizeof(uchar*) + sizeof(*pa->flag)); - pa->flag= (int7*) (pa->typelib.type_names+pa->max_count); + pa->flag= (uint8*) (pa->typelib.type_names+pa->max_count); memcpy((uchar*) pa->flag,(char *) (pa->typelib.type_names+old_count), old_count*sizeof(*pa->flag)); } pa->flag[pa->typelib.count]=0; /* Reset flag */ pa->typelib.type_names[pa->typelib.count++]= (char*) (pa->str+pa->length); pa->typelib.type_names[pa->typelib.count]= NullS; /* Put end-mark */ - VOID(strmov((char*) pa->str + pa->length, name)); + (void) strmov((char*) pa->str + pa->length, name); pa->length+=length; DBUG_RETURN(0); } /* insert_pointer_name */ @@ -324,9 +323,9 @@ static void free_pointer_array(reg1 POINTER_ARRAY *pa) if (pa->typelib.count) { pa->typelib.count=0; - my_free((uchar*) pa->typelib.type_names,MYF(0)); + my_free(pa->typelib.type_names); pa->typelib.type_names=0; - my_free((uchar*) pa->str,MYF(0)); + my_free(pa->str); } return; } /* free_pointer_array */ @@ -433,7 +432,7 @@ static REPLACE *init_replace(char * *from, char * *to,uint count, free_sets(&sets); DBUG_RETURN(0); } - VOID(make_new_set(&sets)); /* Set starting set */ + (void) make_new_set(&sets); /* Set starting set */ make_sets_invisible(&sets); /* Hide previus sets */ used_sets=-1; word_states=make_new_set(&sets); /* Start of new word */ @@ -441,7 +440,7 @@ static REPLACE *init_replace(char * *from, char * *to,uint count, if (!(follow=(FOLLOWS*) my_malloc((states+2)*sizeof(FOLLOWS),MYF(MY_WME)))) { free_sets(&sets); - my_free((uchar*) found_set,MYF(0)); + my_free(found_set); DBUG_RETURN(0); } @@ -663,9 +662,9 @@ static REPLACE *init_replace(char * *from, char * *to,uint count, replace[i].next[j]=(REPLACE*) (rep_str+(-sets.set[i].next[j]-1)); } } - my_free((uchar*) follow,MYF(0)); + my_free(follow); free_sets(&sets); - my_free((uchar*) found_set,MYF(0)); + my_free(found_set); DBUG_PRINT("exit",("Replace table has %d states",sets.count)); DBUG_RETURN(replace); } @@ -681,7 +680,7 @@ static int init_sets(REP_SETS *sets,uint states) if (!(sets->bit_buffer=(uint*) my_malloc(sizeof(uint)*sets->size_of_bits* SET_MALLOC_HUNC,MYF(MY_WME)))) { - my_free((uchar*) sets->set,MYF(0)); + my_free(sets->set); return 1; } return 0; @@ -742,8 +741,8 @@ static void free_last_set(REP_SETS *sets) static void free_sets(REP_SETS *sets) { - my_free((uchar*)sets->set_buffer,MYF(0)); - my_free((uchar*)sets->bit_buffer,MYF(0)); + my_free(sets->set_buffer); + my_free(sets->bit_buffer); return; } @@ -950,8 +949,8 @@ static void reset_buffer() static void free_buffer() { - my_free(buffer,MYF(MY_WME)); - my_free(out_buff,MYF(MY_WME)); + my_free(buffer); + my_free(out_buff); } diff --git a/extra/resolve_stack_dump.c b/extra/resolve_stack_dump.c index 4faca1653b2..6ea818c601b 100644 --- a/extra/resolve_stack_dump.c +++ b/extra/resolve_stack_dump.c @@ -17,7 +17,6 @@ versions into symbolic names. By Sasha Pachev <sasha@mysql.com> */ -#define DONT_USE_RAID #include <my_global.h> #include <m_ctype.h> #include <my_sys.h> @@ -65,8 +64,6 @@ static struct my_option my_long_options[] = static void verify_sort(); -#include <help_start.h> - static void print_version(void) { printf("%s Ver %s Distrib %s, for %s (%s)\n",my_progname,DUMP_VERSION, @@ -90,8 +87,6 @@ The numeric-dump-file should contain a numeric stack trace from mysqld.\n\ If the numeric-dump-file is not given, the stack trace is read from stdin.\n"); } -#include <help_end.h> - static void die(const char* fmt, ...) { diff --git a/extra/resolveip.c b/extra/resolveip.c index 90fda977848..094dfecae59 100644 --- a/extra/resolveip.c +++ b/extra/resolveip.c @@ -155,11 +155,8 @@ int main(int argc, char **argv) else { printf ("Host name of %s is %s", ip,hpaddr->h_name); -#ifndef __NETWARE__ - /* this information is not available on NetWare */ for (q = hpaddr->h_aliases; *q != 0; q++) (void) printf(", %s", *q); -#endif /* __NETWARE__ */ puts(""); } } diff --git a/extra/yassl/CMakeLists.txt b/extra/yassl/CMakeLists.txt index eda5c3d4652..46e1abbc08e 100755..100644 --- a/extra/yassl/CMakeLists.txt +++ b/extra/yassl/CMakeLists.txt @@ -11,18 +11,30 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA -INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/extra/yassl/include - ${CMAKE_SOURCE_DIR}/extra/yassl/taocrypt/include - ${CMAKE_SOURCE_DIR}/extra/yassl/taocrypt/mySTL) - -ADD_DEFINITIONS("-D_LIB -DYASSL_PREFIX -DYASSL_THREAD_SAFE") +INCLUDE_DIRECTORIES( + ${CMAKE_SOURCE_DIR}/include + ${CMAKE_SOURCE_DIR}/extra/yassl/include + ${CMAKE_SOURCE_DIR}/extra/yassl/taocrypt/include + ${CMAKE_SOURCE_DIR}/extra/yassl/taocrypt/mySTL) +ADD_DEFINITIONS(${SSL_DEFINES}) +IF(CMAKE_COMPILER_IS_GNUXX) + #Remove -fno-implicit-templates + #(yassl sources cannot be compiled with it) + STRING(REPLACE "-fno-implicit-templates" "" CMAKE_CXX_FLAGS +${CMAKE_CXX_FLAGS}) +ENDIF() SET(YASSL_SOURCES src/buffer.cpp src/cert_wrapper.cpp src/crypto_wrapper.cpp src/handshake.cpp src/lock.cpp src/log.cpp src/socket_wrapper.cpp src/ssl.cpp src/timer.cpp src/yassl_error.cpp src/yassl_imp.cpp src/yassl_int.cpp) -IF(NOT SOURCE_SUBLIBS) - ADD_LIBRARY(yassl ${YASSL_SOURCES}) - ADD_DEPENDENCIES(yassl GenError) -ENDIF(NOT SOURCE_SUBLIBS) + +IF(HAVE_EXPLICIT_TEMPLATE_INSTANTIATION) + SET(YASSL_SOURCES ${YASSL_SOURCES} src/template_instnt.cpp) +ENDIF() + +ADD_CONVENIENCE_LIBRARY(yassl ${YASSL_SOURCES}) +RESTRICT_SYMBOL_EXPORTS(yassl) + + diff --git a/extra/yassl/Makefile.am b/extra/yassl/Makefile.am deleted file mode 100644 index 2280e02f537..00000000000 --- a/extra/yassl/Makefile.am +++ /dev/null @@ -1,20 +0,0 @@ -# Copyright (C) 2005, 2006 MySQL AB -# -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; version 2 of the License. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - -SUBDIRS = taocrypt src testsuite -EXTRA_DIST = CMakeLists.txt - -# Don't update the files from bitkeeper -%::SCCS/s.% diff --git a/extra/yassl/include/yassl_int.hpp b/extra/yassl/include/yassl_int.hpp index 1e761f559e2..1cc4200d10c 100644 --- a/extra/yassl/include/yassl_int.hpp +++ b/extra/yassl/include/yassl_int.hpp @@ -34,9 +34,8 @@ #include "openssl/ssl.h" // ASN1_STRING and DH // Check if _POSIX_THREADS should be forced -#if !defined(_POSIX_THREADS) && (defined(__NETWARE__) || defined(__hpux)) +#if !defined(_POSIX_THREADS) && defined(__hpux) // HPUX does not define _POSIX_THREADS as it's not _fully_ implemented -// Netware supports pthreads but does not announce it #define _POSIX_THREADS #endif diff --git a/extra/yassl/src/Makefile.am b/extra/yassl/src/Makefile.am deleted file mode 100644 index 7db36f652ac..00000000000 --- a/extra/yassl/src/Makefile.am +++ /dev/null @@ -1,27 +0,0 @@ -# Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved. -# -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; version 2 of the License. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - -INCLUDES = -I$(srcdir)/../include -I$(srcdir)/../taocrypt/include -I$(srcdir)/../taocrypt/mySTL - -noinst_LTLIBRARIES = libyassl.la -libyassl_la_SOURCES = buffer.cpp cert_wrapper.cpp crypto_wrapper.cpp \ - handshake.cpp lock.cpp log.cpp socket_wrapper.cpp ssl.cpp \ - template_instnt.cpp timer.cpp yassl_imp.cpp yassl_error.cpp yassl_int.cpp -EXTRA_DIST = $(wildcard ../include/*.hpp) $(wildcard ../include/openssl/*.h) -AM_CXXFLAGS = -DYASSL_PURE_C -DYASSL_PREFIX @yassl_thread_cxxflags@ - -# Don't update the files from bitkeeper -%::SCCS/s.% - diff --git a/extra/yassl/src/socket_wrapper.cpp b/extra/yassl/src/socket_wrapper.cpp index eee5d47377f..cebbd9c5529 100644 --- a/extra/yassl/src/socket_wrapper.cpp +++ b/extra/yassl/src/socket_wrapper.cpp @@ -37,7 +37,7 @@ #include <fcntl.h> #endif // _WIN32 -#if defined(__sun) || defined(__SCO_VERSION__) || defined(__NETWARE__) +#if defined(__sun) || defined(__SCO_VERSION__) #include <sys/filio.h> #endif diff --git a/extra/yassl/taocrypt/CMakeLists.txt b/extra/yassl/taocrypt/CMakeLists.txt index 5965f0d29d0..750731a0449 100755..100644 --- a/extra/yassl/taocrypt/CMakeLists.txt +++ b/extra/yassl/taocrypt/CMakeLists.txt @@ -11,13 +11,13 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/extra/yassl/taocrypt/mySTL ${CMAKE_SOURCE_DIR}/extra/yassl/taocrypt/include) -ADD_DEFINITIONS("-DYASSL_THREAD_SAFE") - +INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/include) +ADD_DEFINITIONS(${SSL_DEFINES}) SET(TAOCRYPT_SOURCES src/aes.cpp src/aestables.cpp src/algebra.cpp src/arc4.cpp src/asn.cpp src/coding.cpp src/des.cpp src/dh.cpp src/dsa.cpp src/file.cpp src/hash.cpp src/integer.cpp src/md2.cpp src/md4.cpp src/md5.cpp src/misc.cpp src/random.cpp src/ripemd.cpp src/rsa.cpp src/sha.cpp @@ -26,6 +26,11 @@ SET(TAOCRYPT_SOURCES src/aes.cpp src/aestables.cpp src/algebra.cpp src/arc4.cpp include/error.hpp include/file.hpp include/hash.hpp include/hmac.hpp include/integer.hpp include/md2.hpp include/md5.hpp include/misc.hpp include/modarith.hpp include/modes.hpp include/random.hpp include/ripemd.hpp include/rsa.hpp include/sha.hpp) -IF(NOT SOURCE_SUBLIBS) - ADD_LIBRARY(taocrypt ${TAOCRYPT_SOURCES}) -ENDIF(NOT SOURCE_SUBLIBS) + +IF(HAVE_EXPLICIT_TEMPLATE_INSTANTIATION) + SET(TAOCRYPT_SOURCES ${TAOCRYPT_SOURCES} src/template_instnt.cpp) +ENDIF() + +ADD_CONVENIENCE_LIBRARY(taocrypt ${TAOCRYPT_SOURCES}) +RESTRICT_SYMBOL_EXPORTS(taocrypt) + diff --git a/extra/yassl/taocrypt/Makefile.am b/extra/yassl/taocrypt/Makefile.am deleted file mode 100644 index de59419a736..00000000000 --- a/extra/yassl/taocrypt/Makefile.am +++ /dev/null @@ -1,20 +0,0 @@ -# Copyright (C) 2005, 2006 MySQL AB -# -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; version 2 of the License. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - -SUBDIRS = src test benchmark -EXTRA_DIST = CMakeLists.txt $(wildcard mySTL/*.hpp) - -# Don't update the files from bitkeeper -%::SCCS/s.% diff --git a/extra/yassl/taocrypt/benchmark/Makefile.am b/extra/yassl/taocrypt/benchmark/Makefile.am deleted file mode 100644 index 32fe504734d..00000000000 --- a/extra/yassl/taocrypt/benchmark/Makefile.am +++ /dev/null @@ -1,24 +0,0 @@ -# Copyright (c) 2006, 2010, Oracle and/or its affiliates. All rights reserved. -# -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; version 2 of the License. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - -INCLUDES = -I$(srcdir)/../include -I$(srcdir)/../mySTL -noinst_PROGRAMS = benchmark -benchmark_SOURCES = benchmark.cpp -benchmark_LDADD = $(top_builddir)/extra/yassl/taocrypt/src/libtaocrypt.la -benchmark_CXXFLAGS = -DYASSL_PURE_C @yassl_thread_cxxflags@ -EXTRA_DIST = benchmark.dsp rsa1024.der dh1024.der dsa1024.der make.bat - -# Don't update the files from bitkeeper -%::SCCS/s.% diff --git a/extra/yassl/taocrypt/include/misc.hpp b/extra/yassl/taocrypt/include/misc.hpp index 96648a39aa1..431316b84d1 100644 --- a/extra/yassl/taocrypt/include/misc.hpp +++ b/extra/yassl/taocrypt/include/misc.hpp @@ -125,7 +125,7 @@ void CleanUp(); // no gas on these systems ?, disable for now -#if defined(__sun__) || defined (__QNX__) || defined (__APPLE__) +#if defined(__sun__) || defined (__APPLE__) #define TAOCRYPT_DISABLE_X86ASM #endif diff --git a/extra/yassl/taocrypt/src/Makefile.am b/extra/yassl/taocrypt/src/Makefile.am deleted file mode 100644 index 760205a625c..00000000000 --- a/extra/yassl/taocrypt/src/Makefile.am +++ /dev/null @@ -1,33 +0,0 @@ -# Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved. -# -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; version 2 of the License. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - -INCLUDES = -I$(srcdir)/../include -I$(srcdir)/../mySTL - -noinst_LTLIBRARIES = libtaocrypt.la - -libtaocrypt_la_SOURCES = aes.cpp aestables.cpp algebra.cpp arc4.cpp \ - asn.cpp bftables.cpp blowfish.cpp coding.cpp des.cpp dh.cpp \ - dsa.cpp file.cpp hash.cpp integer.cpp md2.cpp md4.cpp md5.cpp misc.cpp \ - random.cpp ripemd.cpp rsa.cpp sha.cpp template_instnt.cpp \ - tftables.cpp twofish.cpp - -libtaocrypt_la_CXXFLAGS = @yassl_taocrypt_extra_cxxflags@ -DYASSL_PURE_C \ - @yassl_thread_cxxflags@ - -EXTRA_DIST = $(wildcard ../include/*.hpp) - -# Don't update the files from bitkeeper -%::SCCS/s.% - diff --git a/extra/yassl/taocrypt/src/random.cpp b/extra/yassl/taocrypt/src/random.cpp index 2bbc0a85e8b..729421fc71d 100644 --- a/extra/yassl/taocrypt/src/random.cpp +++ b/extra/yassl/taocrypt/src/random.cpp @@ -92,67 +92,6 @@ void OS_Seed::GenerateSeed(byte* output, word32 sz) } -#elif defined(__NETWARE__) - -/* The OS_Seed implementation for Netware */ - -#include <nks/thread.h> -#include <nks/plat.h> - -// Loop on high resulution Read Time Stamp Counter -static void NetwareSeed(byte* output, word32 sz) -{ - word32 tscResult; - - for (word32 i = 0; i < sz; i += sizeof(tscResult)) { - #if defined(__GNUC__) - asm volatile("rdtsc" : "=A" (tscResult)); - #else - #ifdef __MWERKS__ - asm { - #else - __asm { - #endif - rdtsc - mov tscResult, eax - } - #endif - - memcpy(output, &tscResult, sizeof(tscResult)); - output += sizeof(tscResult); - - NXThreadYield(); // induce more variance - } -} - - -OS_Seed::OS_Seed() -{ -} - - -OS_Seed::~OS_Seed() -{ -} - - -void OS_Seed::GenerateSeed(byte* output, word32 sz) -{ - /* - Try to use NXSeedRandom as it will generate a strong - seed using the onboard 82802 chip - - As it's not always supported, fallback to default - implementation if an error is returned - */ - - if (NXSeedRandom(sz, output) != 0) - { - NetwareSeed(output, sz); - } -} - - #else /* The default OS_Seed implementation */ diff --git a/extra/yassl/taocrypt/test/Makefile.am b/extra/yassl/taocrypt/test/Makefile.am deleted file mode 100644 index 87f35f2f78e..00000000000 --- a/extra/yassl/taocrypt/test/Makefile.am +++ /dev/null @@ -1,24 +0,0 @@ -# Copyright (c) 2006, 2010, Oracle and/or its affiliates. All rights reserved. -# -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; version 2 of the License. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - -INCLUDES = -I$(srcdir)/../include -I$(srcdir)/../mySTL -noinst_PROGRAMS = test -test_SOURCES = test.cpp -test_LDADD = $(top_builddir)/extra/yassl/taocrypt/src/libtaocrypt.la -test_CXXFLAGS = -DYASSL_PURE_C @yassl_thread_cxxflags@ -EXTRA_DIST = make.bat - -# Don't update the files from bitkeeper -%::SCCS/s.% diff --git a/extra/yassl/testsuite/Makefile.am b/extra/yassl/testsuite/Makefile.am deleted file mode 100644 index 081b76401fa..00000000000 --- a/extra/yassl/testsuite/Makefile.am +++ /dev/null @@ -1,29 +0,0 @@ -# Copyright (c) 2006, 2010, Oracle and/or its affiliates. All rights reserved. -# -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; version 2 of the License. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - -INCLUDES = -I$(srcdir)/../include -I$(srcdir)/../taocrypt/include -I$(srcdir)/../taocrypt/mySTL -noinst_PROGRAMS = testsuite -testsuite_SOURCES = testsuite.cpp ../taocrypt/test/test.cpp \ - ../examples/client/client.cpp ../examples/server/server.cpp \ - ../examples/echoclient/echoclient.cpp \ - ../examples/echoserver/echoserver.cpp -testsuite_CXXFLAGS = -DYASSL_PURE_C -DYASSL_PREFIX -DNO_MAIN_DRIVER @yassl_thread_cxxflags@ -testsuite_LDADD = $(top_builddir)/extra/yassl/src/libyassl.la \ - $(top_builddir)/extra/yassl/taocrypt/src/libtaocrypt.la -EXTRA_DIST = testsuite.dsp test.hpp input quit make.bat - -# Don't update the files from bitkeeper -%::SCCS/s.% - diff --git a/extra/yassl/testsuite/test.hpp b/extra/yassl/testsuite/test.hpp index 07c0a70da26..e7de3268ec4 100644 --- a/extra/yassl/testsuite/test.hpp +++ b/extra/yassl/testsuite/test.hpp @@ -50,8 +50,7 @@ #endif /* _WIN32 */ -#if !defined(_SOCKLEN_T) && \ - (defined(_WIN32) || defined(__NETWARE__) || defined(__APPLE__)) +#if !defined(_SOCKLEN_T) && (defined(_WIN32) || defined(__APPLE__)) typedef int socklen_t; #endif @@ -60,18 +59,14 @@ #if defined(__hpux) // HPUX uses int* for third parameter to accept typedef int* ACCEPT_THIRD_T; -#elif defined(__NETWARE__) -// NetWare uses size_t* for third parameter to accept - typedef size_t* ACCEPT_THIRD_T; #else typedef socklen_t* ACCEPT_THIRD_T; #endif // Check if _POSIX_THREADS should be forced -#if !defined(_POSIX_THREADS) && (defined(__NETWARE__) || defined(__hpux)) +#if !defined(_POSIX_THREADS) && defined(__hpux) // HPUX does not define _POSIX_THREADS as it's not _fully_ implemented -// Netware supports pthreads but does not announce it #define _POSIX_THREADS #endif |