mirror of
https://git.savannah.gnu.org/git/guile.git
synced 2025-06-17 01:00:20 +02:00
Add `getaddrinfo' and related procedures.
* libguile/net_db.c (sym_getaddrinfo_error, sym_ai_passive, sym_ai_canonname, sym_ai_numerichost, sym_ai_numericserv, sym_ai_v4mapped, sym_ai_all, sym_ai_addrconfig, sym_eai_badflags, sym_eai_noname, sym_eai_again, sym_eai_fail, sym_eai_family, sym_eai_socktype, sym_eai_service, sym_eai_memory, sym_eai_system, sym_eai_overflow, sym_eai_nodata, sym_eai_addrfamily, sym_eai_inprogress, sym_eai_canceled, sym_eai_notcanceled, sym_eai_alldone, sym_eai_intr, sym_eai_idn_encode): New variables. (scm_from_addrinfo, scm_getaddrinfo, scm_gai_strerror): New functions. * libguile/net_db.h (scm_getaddrinfo, scm_gai_strerror): New functions. * module/ice-9/networking.scm (addrinfo:flags, addrinfo:fam, addrinfo:socktype, addrinfo:protocol, addrinfo:addr, addrinfo:canonname): New procedures. * test-suite/tests/net-db.test: New file. * test-suite/Makefile.am (SCM_TESTS): Add `tests/net-db.test'. * doc/ref/posix.texi (Network Databases)[getaddrinfo]: New subsection. [The Host Database]: Suggest using `getaddrinfo'.
This commit is contained in:
parent
61cd9dc907
commit
55ae00ea73
6 changed files with 539 additions and 5 deletions
|
@ -1,6 +1,6 @@
|
|||
;;; installed-scm-file
|
||||
|
||||
;;;; Copyright (C) 1999, 2005, 2006 Free Software Foundation, Inc.
|
||||
;;;; Copyright (C) 1999, 2005, 2006, 2010 Free Software Foundation, Inc.
|
||||
;;;;
|
||||
;;;; This library is free software; you can redistribute it and/or
|
||||
;;;; modify it under the terms of the GNU Lesser General Public
|
||||
|
@ -85,3 +85,10 @@
|
|||
(define (sockaddr:port obj) (vector-ref obj 2))
|
||||
(define (sockaddr:flowinfo obj) (vector-ref obj 3))
|
||||
(define (sockaddr:scopeid obj) (vector-ref obj 4))
|
||||
|
||||
(define (addrinfo:flags obj) (vector-ref obj 0))
|
||||
(define (addrinfo:fam obj) (vector-ref obj 1))
|
||||
(define (addrinfo:socktype obj) (vector-ref obj 2))
|
||||
(define (addrinfo:protocol obj) (vector-ref obj 3))
|
||||
(define (addrinfo:addr obj) (vector-ref obj 4))
|
||||
(define (addrinfo:canonname obj) (vector-ref obj 5))
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue