ADDED address-info.wiki Index: address-info.wiki ================================================================== --- /dev/null +++ address-info.wiki @@ -0,0 +1,53 @@ +

Address Info API

+ +This CHICKEN module exposes getaddrinfo(3) functionality to Scheme. + + + (require-extension address-info) + + +

Address Info Record

+ + + (define-record-type address-info + (make-address-info family type host port) + address-info? + [family address-info-family] + [type address-info-type] + [host address-info-host] + [port address-info-port]) + + +Descriptor for an internet socket address. The family is either +'ipv4 or 'ipv6. The type is either 'tcp, +'udp or 'raw. The host is a numeric address encoded as +a string. The port is a either a positive integer or #f. + +

Address Info Lookup

+ + + (address-infos + HOST [#:port PORT] + [#:family FAMILY] [#:type TYPE] + [#:server? BOOLEAN] [#:numeric? BOOLEAN]) + => (list ADDRESS-INFO ...) | #f + + +Tries to lookup socket addresses for the given host and/or port. If the +lookup is successful, the procedure returns a list of address +information records. Otherwise it returns #f. + +For a successful lookup you must at least specify a hostname or a port. +If no hostname is specified, the function defaults to server mode lookup +and will return wildcard addresses. This behaviour can be changed using +the #:server? flag. + +By default, the procedure will return address information records for +all suitable supported protocol families and socket types. The +#:family argument may be used to filter for 'ipv4 or +'ipv6 addresses. The #:type argument may be used to +filter for 'tcp / 'stream, 'udp / +'datagram or 'raw socket types. + +Unless the #:numeric? flag is set to a true value, the +procedure will convert hostnames into numeric network addresses.