diff options
author | Andy Wingo <wingo@pobox.com> | 2014-02-08 14:27:49 +0100 |
---|---|---|
committer | Andy Wingo <wingo@pobox.com> | 2014-02-08 14:28:07 +0100 |
commit | b9b88351ea2c4b43a6f90938554dc5693b17e328 (patch) | |
tree | d314a8990da3c26b81544c5d1387396e780b3a1e /doc | |
parent | 0ce224594ae5a673f6a397c284db5f5a61935334 (diff) | |
download | guile-b9b88351ea2c4b43a6f90938554dc5693b17e328.tar.gz |
Deprecate htons, htonl, ntohs, ntohl
* libguile/sockets.h:
* libguile/sockets.c:
* libguile/deprecated.h:
* libguile/deprecated.c (scm_htons, scm_htonl, scm_ntohs, scm_ntohl):
Deprecate. Bytevectors adequately subsume their functionality.
* doc/ref/posix.texi:
* test-suite/tests/00-socket.test: Update.
Diffstat (limited to 'doc')
-rw-r--r-- | doc/ref/posix.texi | 51 |
1 files changed, 1 insertions, 50 deletions
diff --git a/doc/ref/posix.texi b/doc/ref/posix.texi index 56f5c78fc..7ca2fb01b 100644 --- a/doc/ref/posix.texi +++ b/doc/ref/posix.texi @@ -1,7 +1,7 @@ @c -*-texinfo-*- @c This is part of the GNU Guile Reference Manual. @c Copyright (C) 1996, 1997, 2000, 2001, 2002, 2003, 2004, 2006, 2007, -@c 2008, 2009, 2010, 2011, 2012, 2013 Free Software Foundation, Inc. +@c 2008, 2009, 2010, 2011, 2012, 2013, 2014 Free Software Foundation, Inc. @c See the file guile.texi for copying conditions. @node POSIX @@ -3392,55 +3392,6 @@ file descriptor: any unflushed buffered port data is ignored. @end deffn -The following functions can be used to convert short and long integers -between ``host'' and ``network'' order. Although the procedures above do -this automatically for addresses, the conversion will still need to -be done when sending or receiving encoded integer data from the network. - -@deffn {Scheme Procedure} htons value -@deffnx {C Function} scm_htons (value) -Convert a 16 bit quantity from host to network byte ordering. -@var{value} is packed into 2 bytes, which are then converted -and returned as a new integer. -@end deffn - -@deffn {Scheme Procedure} ntohs value -@deffnx {C Function} scm_ntohs (value) -Convert a 16 bit quantity from network to host byte ordering. -@var{value} is packed into 2 bytes, which are then converted -and returned as a new integer. -@end deffn - -@deffn {Scheme Procedure} htonl value -@deffnx {C Function} scm_htonl (value) -Convert a 32 bit quantity from host to network byte ordering. -@var{value} is packed into 4 bytes, which are then converted -and returned as a new integer. -@end deffn - -@deffn {Scheme Procedure} ntohl value -@deffnx {C Function} scm_ntohl (value) -Convert a 32 bit quantity from network to host byte ordering. -@var{value} is packed into 4 bytes, which are then converted -and returned as a new integer. -@end deffn - -These procedures are inconvenient to use at present, but consider: - -@example -(define write-network-long - (lambda (value port) - (let ((v (make-uniform-vector 1 1 0))) - (uniform-vector-set! v 0 (htonl value)) - (uniform-vector-write v port)))) - -(define read-network-long - (lambda (port) - (let ((v (make-uniform-vector 1 1 0))) - (uniform-vector-read! v port) - (ntohl (uniform-vector-ref v 0))))) -@end example - @node Internet Socket Examples @subsubsection Network Socket Examples |