diff options
author | unknown <monty@narttu.mysql.fi> | 2003-07-03 19:23:06 +0300 |
---|---|---|
committer | unknown <monty@narttu.mysql.fi> | 2003-07-03 19:23:06 +0300 |
commit | 5179b54113ce70dedb237c3c7dd262d59c06fe73 (patch) | |
tree | 763b9a64f7ae82fd4526acdc1cfff89969efca53 /libmysql/libmysql.c | |
parent | 27a96b738956da9627016cf977e31ab8aaef6ad2 (diff) | |
download | mariadb-git-5179b54113ce70dedb237c3c7dd262d59c06fe73.tar.gz |
Fix for UNIXWARE 7
Remove unaligned warnings on Ia64 from client library when using --host
Fix for replication when using many file descriptors
include/my_global.h:
Fix for UNIXWARE 7
libmysql/libmysql.c:
Portability fix (removes unaligned warnings on Ia64)
mysql-test/r/symlink.result:
Updated results
sql/mini_client.cc:
Ported connect timeout code from libmysql.c
Diffstat (limited to 'libmysql/libmysql.c')
-rw-r--r-- | libmysql/libmysql.c | 16 |
1 files changed, 14 insertions, 2 deletions
diff --git a/libmysql/libmysql.c b/libmysql/libmysql.c index 3c8ac9f3387..aa169335dfb 100644 --- a/libmysql/libmysql.c +++ b/libmysql/libmysql.c @@ -1596,6 +1596,18 @@ mysql_connect(MYSQL *mysql,const char *host, /* + The following union is used to force a struct to be double allgined. + This is to avoid warings with gethostname_r() on Linux itanium systems +*/ + +typedef union +{ + double tmp; + char buff[GETHOSTBYNAME_BUFF_SIZE]; +} gethostbyname_buff; + + +/* Note that the mysql argument must be initialized with mysql_init() before calling mysql_real_connect ! */ @@ -1766,8 +1778,8 @@ mysql_real_connect(MYSQL *mysql,const char *host, const char *user, { int tmp_errno; struct hostent tmp_hostent,*hp; - char buff2[GETHOSTBYNAME_BUFF_SIZE]; - hp = my_gethostbyname_r(host,&tmp_hostent,buff2,sizeof(buff2), + gethostbyname_buff buff2; + hp = my_gethostbyname_r(host,&tmp_hostent,buff2.buff,sizeof(buff2), &tmp_errno); if (!hp) { |