diff options
author | Jarkko Hietaniemi <jhi@iki.fi> | 1998-11-22 18:21:07 +0000 |
---|---|---|
committer | Jarkko Hietaniemi <jhi@iki.fi> | 1998-11-22 18:21:07 +0000 |
commit | de4597cb5b86db37759ed7b6341e933f7aac9aa6 (patch) | |
tree | 8b8f91bd1ce71e93501b8e6a502037ed76f22634 /config_h.SH | |
parent | 12940611cd66eff0427cdf2e912e870058b20252 (diff) | |
download | perl-de4597cb5b86db37759ed7b6341e933f7aac9aa6.tar.gz |
MSG_PROXY for GNU/Hurd (previously we believed that
all GNU libc platforms have MSG_PROXY. Untrue).
In fact this ended up as a major MSG_* and SCM_*
update. The MSG_XXX known to be enums in some
versions of the glibc are now probed for and respective
HAS_MSG_XXX are defined. While I was at it I noticed
SCM_RIGHTS being similarly an enum. This reminded me of
an ancient discussion in perl5-porters:
http://www.xray.mpe.mpg.de/mailing-lists/perl5-porters/9612/msg01017.html
The BSD socket interface has a nifty feature for passing
file descriptors and credentials--via sockets. It may be
too late to add this functionality to the CORE but
at least Configure now probes for the functions,
structs, and includes, defining the appropriate
HAS_YYY and I_ZZZ, and the Socket extension exports
the constants, in case somebody wants to write an
extension for this interface.
p4raw-id: //depot/cfgperl@2285
Diffstat (limited to 'config_h.SH')
-rw-r--r-- | config_h.SH | 85 |
1 files changed, 82 insertions, 3 deletions
diff --git a/config_h.SH b/config_h.SH index f84775a996..b70bf26628 100644 --- a/config_h.SH +++ b/config_h.SH @@ -1731,8 +1731,68 @@ sed <<!GROK!THIS! >config.h -e 's!^#undef\(.*/\)\*!/\*#define\1 \*!' -e 's!^#un- * This symbol, if defined, indicates that the BSD socketpair() call is * supported. */ -#$d_socket HAS_SOCKET /**/ -#$d_sockpair HAS_SOCKETPAIR /**/ +/* HAS_MSG_CTRUNC: + * This symbol, if defined, indicates that the MSG_CTRUNC is supported. + * Checking just with #ifdef might not be enough because this symbol + * has been known to be an enum. + */ +/* HAS_MSG_DONTROUTE: + * This symbol, if defined, indicates that the MSG_DONTROUTE is supported. + * Checking just with #ifdef might not be enough because this symbol + * has been known to be an enum. + */ +/* HAS_MSG_OOB: + * This symbol, if defined, indicates that the MSG_OOB is supported. + * Checking just with #ifdef might not be enough because this symbol + * has been known to be an enum. + */ +/* HAS_MSG_PEEK: + * This symbol, if defined, indicates that the MSG_PEEK is supported. + * Checking just with #ifdef might not be enough because this symbol + * has been known to be an enum. + */ +/* HAS_MSG_PROXY: + * This symbol, if defined, indicates that the MSG_PROXY is supported. + * Checking just with #ifdef might not be enough because this symbol + * has been known to be an enum. + */ +/* HAS_SCM_RIGHTS: + * This symbol, if defined, indicates that the SCM_RIGHTS is supported. + * Checking just with #ifdef might not be enough because this symbol + * has been known to be an enum. + */ +/* HAS_SENDMSG: + * This symbol, if defined, indicates that the sendmsg is supported + * to send messages between sockets. You will also need struct + * iovec from <sys/uio.h>, HAS_STRUCT_IOVEC and I_SYSUIO. + */ +/* HAS_RECVMSG: + * This symbol, if defined, indicates that the recvmsg is supported + * to send messages between sockets. You will also need struct + * iovec from <sys/uio.h>, HAS_STRUCT_IOVEC and I_SYSUIO. + */ +/* HAS_STRUCT_MSGHDR: + * This symbol, if defined, indicates that the struct msghdr + * (BSD 4.3 or 4.4) is supported. You will also need struct + * iovec from <sys/uio.h>, HAS_STRUCT_IOVEC and I_SYSUIO. + */ +/* HAS_STRUCT_CMSGHDR: + * This symbol, if defined, indicates that the struct cmsghdr + * (BSD 4.4) is supported. You will also need struct + * iovec from <sys/uio.h>, HAS_STRUCT_IOVEC and I_SYSUIO. + */ +#$d_socket HAS_SOCKET /**/ +#$d_sockpair HAS_SOCKETPAIR /**/ +#$d_msg_ctrunc HAS_MSG_CTRUNC /**/ +#$d_msg_dontroute HAS_MSG_DONTROUTE /**/ +#$d_msg_oob HAS_MSG_OOB /**/ +#$d_msg_peek HAS_MSG_PEEK /**/ +#$d_msg_proxy HAS_MSG_PROXY /**/ +#$d_scm_rights HAS_SCM_RIGHTS /**/ +#$d_sendmsg HAS_SENDMSG /**/ +#$d_recvmsg HAS_RECVMSG /**/ +#$d_msghdr_s HAS_STRUCT_MSGHDR /**/ +#$d_cmsghdr_s HAS_STRUCT_CMSGHDR /**/ /* USE_STAT_BLOCKS: * This symbol is defined if this system has a stat structure declaring @@ -1865,6 +1925,12 @@ sed <<!GROK!THIS! >config.h -e 's!^#undef\(.*/\)\*!/\*#define\1 \*!' -e 's!^#un- #$d_pwgecos PWGECOS /**/ #$d_pwpasswd PWPASSWD /**/ +/* I_SYSUIO: + * This symbol, if defined, indicates that <sys/uio.h> exists and + * should be included. + */ +#$i_sysuio I_SYSUIO /**/ + /* Free_t: * This variable contains the return type of free(). It is usually * void, but occasionally int. @@ -1972,12 +2038,25 @@ sed <<!GROK!THIS! >config.h -e 's!^#undef\(.*/\)\*!/\*#define\1 \*!' -e 's!^#un- */ #$d_ftello HAS_FTELLO /**/ +/* HAS_READV: + * This symbol, if defined, indicates that the readv routine is + * available to do gather reads. You will also need <sys/uio.h> + * and there I_SYSUIO. + */ +#$d_readv HAS_READV /**/ + /* USE_SFIO: * This symbol, if defined, indicates that sfio should * be used. */ #$d_sfio USE_SFIO /**/ +/* HAS_WRITEV: + * This symbol, if defined, indicates that the writev routine is + * available to do scatter writes. + */ +#$d_writev HAS_WRITEV /**/ + /* HAS_DBMINIT64: * This symbol, if defined, indicates that the dbminit64 routine is * available to open dbm files larger than 2 gigabytes. @@ -2107,7 +2186,7 @@ sed <<!GROK!THIS! >config.h -e 's!^#undef\(.*/\)\*!/\*#define\1 \*!' -e 's!^#un- #$d_telldir64 HAS_TELLDIR64 /**/ #$d_truncate64 HAS_TRUNCATE64 /**/ #$d_off64t HAS_OFF64_T /**/ -#$d_dirent64s HAS_STRUCT_DIRENT64 /**/ +#$d_dirent64_s HAS_STRUCT_DIRENT64 /**/ /* PRIVLIB: * This symbol contains the name of the private library for this package. |