Merge /home/gerhard/Develop/socat-hpux into socat-1.7.0.0

This commit is contained in:
Gerhard Rieger 2008-09-29 21:23:45 +02:00
commit 6334ce1a62
5 changed files with 18 additions and 1 deletions

View file

@ -331,7 +331,7 @@
/* Define if you have struct ifreq.ifr_index */
#undef HAVE_STRUCT_IFREQ_IFR_INDEX
/* Define if you have struct ifreq.ifr_ifindex */
/* Define if you have struct ifreq.ifr_ifindex; not on HPUX */
#undef HAVE_STRUCT_IFREQ_IFR_IFINDEX
/* Define if your struct sockaddr has sa_len */
@ -364,6 +364,9 @@
/* Define if you have the setenv function */
#undef HAVE_SETENV
/* Define if you have the unsetenv function. not on HP-UX */
#undef HAVE_UNSETENV
/* Define if you have the flock function */
#undef HAVE_FLOCK

View file

@ -1198,6 +1198,9 @@ dnl Search for setenv()
AC_CHECK_FUNC(setenv, AC_DEFINE(HAVE_SETENV),
AC_CHECK_LIB(isode, setenv, [LIBS="-lisode $LIBS"]))
dnl Search for unsetenv()
AC_CHECK_FUNC(unsetenv, AC_DEFINE(HAVE_UNSETENV))
dnl Run time checks

View file

@ -1459,6 +1459,7 @@ int Setenv(const char *name, const char *value, int overwrite) {
return result;
}
#if HAVE_UNSETENV
/* on Linux it returns int but on FreeBSD void.
we do not expect many errors, so we take void which works on all systems. */
void Unsetenv(const char *name) {
@ -1470,6 +1471,7 @@ void Unsetenv(const char *name) {
errno = _errno;
return;
}
#endif
#if WITH_READLINE

View file

@ -550,7 +550,9 @@ int xiosetenv(const char *varname, const char *value, int overwrite) {
if (Setenv(envname, value, overwrite) < 0) {
Warn3("setenv(\"%s\", \"%s\", 1): %s",
envname, value, strerror(errno));
#if HAVE_UNSETENV
Unsetenv(envname); /* dont want to have a wrong value */
#endif
return -1;
}
return 0;
@ -579,7 +581,9 @@ int xiosetenv2(const char *varname, const char *varname2, const char *value,
if (Setenv(envname, value, overwrite) < 0) {
Warn3("setenv(\"%s\", \"%s\", 1): %s",
envname, value, strerror(errno));
#if HAVE_UNSETENV
Unsetenv(envname); /* dont want to have a wrong value */
#endif
return -1;
}
return 0;

View file

@ -1869,8 +1869,13 @@ char *xiogetifname(int ind, char *val, int ins) {
#endif
#ifdef SIOCGIFNAME
if(Ioctl(s, SIOCGIFNAME, &ifr) < 0) {
#if HAVE_STRUCT_IFREQ_IFR_INDEX
Info3("ioctl(%d, SIOCGIFNAME, {..., ifr_index=%d, ...}: %s",
s, ifr.ifr_index, strerror(errno));
#elif HAVE_STRUCT_IFREQ_IFR_IFINDEX
Info3("ioctl(%d, SIOCGIFNAME, {..., ifr_ifindex=%d, ...}: %s",
s, ifr.ifr_ifindex, strerror(errno));
#endif
if (ins < 0) Close(s);
return NULL;
}