freebsd-src/lib/libc/net/Makefile.inc

Ignoring revisions in .git-blame-ignore-revs. Click here to bypass and see the normal blame view.

185 lines
5.6 KiB
PHP
Raw Normal View History

1994-05-27 05:00:24 +00:00
# machine-independent net sources
.PATH: ${LIBC_SRCTOP}/net
1994-05-27 05:00:24 +00:00
CONFS+= net/hosts net/hosts.equiv net/networks net/nsswitch.conf net/protocols
SRCS+= base64.c ether_addr.c eui64.c \
gai_strerror.c getaddrinfo.c \
gethostbydns.c gethostbyht.c gethostbynis.c gethostnamadr.c \
getifaddrs.c getifmaddrs.c getnameinfo.c \
1994-09-25 02:12:49 +00:00
getnetbydns.c getnetbyht.c getnetbynis.c getnetnamadr.c \
getproto.c getprotoent.c getprotoname.c getservent.c \
if_indextoname.c if_nameindex.c if_nametoindex.c \
ip6opt.c linkaddr.c map_v4v6.c name6.c ntoh.c \
nsdispatch.c nslexer.l nsparser.y nss_compat.c \
rcmd.c rcmdsh.c rthdr.c sctp_sys_calls.c \
Import rewrite of IPv4 socket multicast layer to support source-specific and protocol-independent host mode multicast. The code is written to accomodate IPv6, IGMPv3 and MLDv2 with only a little additional work. This change only pertains to FreeBSD's use as a multicast end-station and does not concern multicast routing; for an IGMPv3/MLDv2 router implementation, consider the XORP project. The work is based on Wilbert de Graaf's IGMPv3 code drop for FreeBSD 4.6, which is available at: http://www.kloosterhof.com/wilbert/igmpv3.html Summary * IPv4 multicast socket processing is now moved out of ip_output.c into a new module, in_mcast.c. * The in_mcast.c module implements the IPv4 legacy any-source API in terms of the protocol-independent source-specific API. * Source filters are lazy allocated as the common case does not use them. They are part of per inpcb state and are covered by the inpcb lock. * struct ip_mreqn is now supported to allow applications to specify multicast joins by interface index in the legacy IPv4 any-source API. * In UDP, an incoming multicast datagram only requires that the source port matches the 4-tuple if the socket was already bound by source port. An unbound socket SHOULD be able to receive multicasts sent from an ephemeral source port. * The UDP socket multicast filter mode defaults to exclusive, that is, sources present in the per-socket list will be blocked from delivery. * The RFC 3678 userland functions have been added to libc: setsourcefilter, getsourcefilter, setipv4sourcefilter, getipv4sourcefilter. * Definitions for IGMPv3 are merged but not yet used. * struct sockaddr_storage is now referenced from <netinet/in.h>. It is therefore defined there if not already declared in the same way as for the C99 types. * The RFC 1724 hack (specify 0.0.0.0/8 addresses to IP_MULTICAST_IF which are then interpreted as interface indexes) is now deprecated. * A patch for the Rhyolite.com routed in the FreeBSD base system is available in the -net archives. This only affects individuals running RIPv1 or RIPv2 via point-to-point and/or unnumbered interfaces. * Make IPv6 detach path similar to IPv4's in code flow; functionally same. * Bump __FreeBSD_version to 700048; see UPDATING. This work was financially supported by another FreeBSD committer. Obtained from: p4://bms_netdev Submitted by: Wilbert de Graaf (original work) Reviewed by: rwatson (locking), silence from fenner, net@ (but with encouragement)
2007-06-12 16:24:56 +00:00
sockatmark.c sourcefilter.c vars.c
.if ${MK_NS_CACHING} != "no"
SRCS+= nscache.c nscachedcli.c
.endif
SYM_MAPS+=${LIBC_SRCTOP}/net/Symbol.map
2006-07-26 08:36:46 +00:00
.if ${MK_INET6_SUPPORT} != "no"
CFLAGS+=-DINET6
.endif
CFLAGS+=-I${.OBJDIR}
# name6.c refers res_private.h
CFLAGS+=-I${LIBC_SRCTOP}/resolv
YFLAGS+=-p_nsyy
LFLAGS+=-P_nsyy
CFLAGS.nslexer.c= -DYY_BUF_SIZE=1024
MAN+= byteorder.3 ethers.3 eui64.3 \
getaddrinfo.3 gai_strerror.3 gethostbyname.3 \
getifaddrs.3 getifmaddrs.3 getipnodebyname.3 \
2005-08-06 16:53:55 +00:00
getnameinfo.3 getnetent.3 getprotoent.3 getservent.3 \
if_indextoname.3 \
inet.3 inet_net.3 \
inet6_opt_init.3 inet6_option_space.3 inet6_rth_space.3 \
inet6_rthdr_space.3 linkaddr.3 \
nsdispatch.3 rcmd.3 rcmdsh.3 resolver.3 sockatmark.3 \
sourcefilter.3 \
sctp_bindx.3 sctp_connectx.3 sctp_freepaddrs.3 \
sctp_getaddrlen.3 sctp_getassocid.3 sctp_getpaddrs.3 \
sctp_opt_info.3 sctp_recvmsg.3 sctp_send.3 sctp_sendmsg.3 \
1994-05-27 05:00:24 +00:00
MLINKS+=byteorder.3 htonl.3 \
byteorder.3 htons.3 \
byteorder.3 ntohl.3 \
1994-05-27 05:00:24 +00:00
byteorder.3 ntohs.3
MLINKS+=ethers.3 ether_aton.3 \
ethers.3 ether_aton_r.3 \
ethers.3 ether_hostton.3 \
ethers.3 ether_line.3 \
ethers.3 ether_ntoa.3 \
ethers.3 ether_ntoa_r.3 \
ethers.3 ether_ntohost.3
MLINKS+=eui64.3 eui64_aton.3 \
eui64.3 eui64_hostton.3 \
eui64.3 eui64_ntoa.3 \
eui64.3 eui64_ntohost.3
MLINKS+=getaddrinfo.3 freeaddrinfo.3
MLINKS+=gethostbyname.3 endhostent.3 \
gethostbyname.3 gethostbyaddr.3 \
gethostbyname.3 gethostbyaddr_r.3 \
gethostbyname.3 gethostbyname2.3 \
gethostbyname.3 gethostbyname2_r.3 \
gethostbyname.3 gethostbyname_r.3 \
gethostbyname.3 gethostent.3 \
gethostbyname.3 herror.3 \
gethostbyname.3 hstrerror.3 \
gethostbyname.3 sethostent.3
MLINKS+=getifaddrs.3 freeifaddrs.3
MLINKS+=getifmaddrs.3 freeifmaddrs.3
MLINKS+=getipnodebyname.3 getipnodebyaddr.3 \
getipnodebyname.3 freehostent.3
MLINKS+=getnetent.3 endnetent.3 \
getnetent.3 getnetbyaddr.3 \
getnetent.3 getnetbyaddr_r.3 \
getnetent.3 getnetbyname.3 \
getnetent.3 getnetbyname_r.3 \
getnetent.3 setnetent.3 \
getnetent.3 getnetent_r.3
MLINKS+=getprotoent.3 endprotoent.3 \
getprotoent.3 getprotobyname.3 \
getprotoent.3 getprotobynumber.3 \
getprotoent.3 setprotoent.3
MLINKS+=getservent.3 endservent.3 \
getservent.3 getservbyname.3 \
getservent.3 getservbyport.3 \
getservent.3 setservent.3
MLINKS+=if_indextoname.3 if_nametoindex.3 \
if_indextoname.3 if_nameindex.3 \
if_indextoname.3 if_freenameindex.3
MLINKS+=inet.3 addr.3 \
inet.3 inet_addr.3 \
inet.3 inet_aton.3 \
inet.3 inet_lnaof.3 \
inet.3 inet_makeaddr.3 \
inet.3 inet_netof.3 \
inet.3 inet_network.3 \
inet.3 inet_ntoa.3 \
inet.3 inet_ntoa_r.3 \
inet.3 inet_ntop.3 \
inet.3 inet_pton.3 \
inet.3 network.3 \
inet.3 ntoa.3
MLINKS+=sctp_freepaddrs.3 sctp_freeladdrs.3
MLINKS+=sctp_getpaddrs.3 sctp_getladdrs.3
MLINKS+=sctp_recvmsg.3 sctp_recvv.3
MLINKS+=sctp_sendmsg.3 sctp_sendmsgx.3
MLINKS+=sctp_send.3 sctp_sendx.3 \
sctp_send.3 sctp_sendv.3
MLINKS+=inet_net.3 inet_net_ntop.3 \
inet_net.3 inet_net_pton.3
MLINKS+=inet6_opt_init.3 inet6_opt_append.3 \
inet6_opt_init.3 inet6_opt_find.3 \
inet6_opt_init.3 inet6_opt_finish.3 \
inet6_opt_init.3 inet6_opt_get_val.3 \
inet6_opt_init.3 inet6_opt_next.3 \
inet6_opt_init.3 inet6_opt_set_val.3 \
inet6_option_space.3 inet6_option_alloc.3 \
inet6_option_space.3 inet6_option_append.3 \
inet6_option_space.3 inet6_option_find.3 \
inet6_option_space.3 inet6_option_init.3 \
inet6_option_space.3 inet6_option_next.3 \
inet6_rth_space.3 inet6_rth_add.3 \
inet6_rth_space.3 inet6_rth_getaddr.3 \
inet6_rth_space.3 inet6_rth_init.3 \
inet6_rth_space.3 inet6_rth_reverse.3 \
inet6_rth_space.3 inet6_rth_segments.3 \
inet6_rthdr_space.3 inet6_rthdr_add.3 \
inet6_rthdr_space.3 inet6_rthdr_getaddr.3 \
inet6_rthdr_space.3 inet6_rthdr_getflags.3 \
inet6_rthdr_space.3 inet6_rthdr_init.3 \
inet6_rthdr_space.3 inet6_rthdr_lasthop.3 \
inet6_rthdr_space.3 inet6_rthdr_reverse.3 \
inet6_rthdr_space.3 inet6_rthdr_segments.3
MLINKS+=linkaddr.3 link_addr.3 \
linkaddr.3 link_ntoa.3
MLINKS+=rcmd.3 iruserok.3 \
rcmd.3 iruserok_sa.3 \
rcmd.3 rcmd_af.3 \
rcmd.3 rresvport.3 \
rcmd.3 rresvport_af.3 \
rcmd.3 ruserok.3
MLINKS+=resolver.3 dn_comp.3 \
resolver.3 dn_expand.3 \
resolver.3 res_init.3 \
resolver.3 res_mkquery.3 \
resolver.3 res_query.3 \
resolver.3 res_search.3 \
resolver.3 res_send.3 \
resolver.3 dn_skipname.3 \
resolver.3 ns_get16.3 \
resolver.3 ns_get32.3 \
resolver.3 ns_put16.3 \
resolver.3 ns_put32.3
MLINKS+=sourcefilter.3 setipv4sourcefilter.3 \
sourcefilter.3 getipv4sourcefilter.3 \
sourcefilter.3 setsourcefilter.3 \
sourcefilter.3 getsourcefilter.3
2005-08-06 16:53:55 +00:00
.if ${MK_HESIOD} != "no"
SRCS+= hesiod.c
SYM_MAPS+=${LIBC_SRCTOP}/net/Symbol.hesiod.map
2005-08-06 16:53:55 +00:00
MAN+= hesiod.3
MLINKS+=hesiod.3 hesiod_init.3 \
hesiod.3 hesiod_resolve.3 \
hesiod.3 hesiod_free_list.3 \
hesiod.3 hesiod_to_bind.3 \
hesiod.3 hesiod_end.3
2005-08-06 16:53:55 +00:00
.endif
afterinstallconfig: modify-nsswitch-conf
modify-nsswitch-conf: .PHONY
.if ${MK_NIS} == "no"
sed -i "" -e 's/.*_compat:/# &/' -e 's/compat$$/files/' \
${DESTDIR}/etc/nsswitch.conf
.endif