mirror of
https://repo.or.cz/socat.git
synced 2024-12-22 15:32:35 +00:00
HP-UX port: unsetenv() might not exist
This commit is contained in:
parent
a0435920f6
commit
618170baf3
4 changed files with 13 additions and 1 deletions
|
@ -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
|
||||
|
||||
|
|
|
@ -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
|
||||
|
||||
|
|
2
sycls.c
2
sycls.c
|
@ -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
|
||||
|
||||
|
|
|
@ -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;
|
||||
|
|
Loading…
Reference in a new issue