您的位置:首页 > 理论基础 > 计算机网络

ubuntu16.04 UNIX 网络编程卷一 源码使用

2016-06-29 17:19 477 查看
参考源码目录  README文档

tar -xvf unpv13e.tar.gz   解压

然后进入源码目录

a:  ./configure 这一步没有出现问题

b:   cd lib

c:   make  这一步没有出错

d:  cd ../libfree 

e: make  这一步报错

gcc -I../lib -g -O2 -D_REENTRANT -Wall   -c -o in_cksum.o in_cksum.c

gcc -I../lib -g -O2 -D_REENTRANT -Wall   -c -o inet_ntop.o inet_ntop.c

inet_ntop.c: In function ‘inet_ntop’:

inet_ntop.c:60:9: error: argument ‘size’ doesn’t match prototype

  size_t size;

         ^

In file included from inet_ntop.c:27:0:

/usr/include/arpa/inet.h:64:20: error: prototype declaration

 extern const char *inet_ntop (int __af, const void *__restrict __cp,

                    ^

<builtin>: recipe for target 'inet_ntop.o' failed

make: *** [inet_ntop.o] Error 1

错误解决方法:

inet_ntop.c第61行 size_t size ->改成 socklen_t size)

问题解决

f:  cd ../libgai

g: make

这样就全部配置好了

编译第一个程序  时间获取程序

 cd ../intro/

make daytimetcpcli

./daytimetcpcli 127.0.0.1

运行时间获取程序,需要现在ubuntu里安装时间服务


Ubuntu安装daytime服务

a. sudo apt-get install xinetd
b. sudo vi /etc/xinetd.d/daytime, change disable = yes to no
c. sudo /etc/init.d/xinetd restart

edward@ubuntu:~/work/unpv13e/intro$ ./daytimetcpcli 127.0.0.1

29 JUN 2016 14:14:55 CST

符完整命令目录

edward@ubuntu:~/work$ tar -xvf unpv13e.tar.gz

unpv13e/DISCLAIMER

unpv13e/README

unpv13e/VERSION

unpv13e/Makefile.in

unpv13e/Make.defines.in

unpv13e/config.h.in

unpv13e/configure

unpv13e/configure.in

unpv13e/config.guess

unpv13e/config.sub

unpv13e/install-sh

unpv13e/aclocal.m4

unpv13e/advio/

unpv13e/advio/old/

unpv13e/advio/old/dgechoaddr.c

unpv13e/advio/old/recvfromflags.c

unpv13e/advio/old/test01.c

unpv13e/advio/Makefile

unpv13e/advio/daytimetcpcli.c

unpv13e/advio/daytimeudpcli3.c

unpv13e/advio/daytimeudpcli4.c

unpv13e/advio/dgclitimeo.c

unpv13e/advio/dgclitimeo1.c

unpv13e/advio/dgclitimeo2.c

unpv13e/advio/dgclitimeo2.lc

unpv13e/advio/dgclitimeo3.c

unpv13e/advio/dgclitimeo3.lc

unpv13e/advio/dgechoaddr.c

unpv13e/advio/dgechoaddr.lc

unpv13e/advio/recvfromflags.c

unpv13e/advio/recvfromflags.lc

unpv13e/advio/script.1

unpv13e/advio/sig_chld_waitpid.c

unpv13e/advio/str_cli_kqueue04.c

unpv13e/advio/str_cli_poll03.c

unpv13e/advio/str_cli_select02.c

unpv13e/advio/str_echo_stdio02.c

unpv13e/advio/str_echo_stdio02.lc

unpv13e/advio/tcpcli01.c

unpv13e/advio/tcpcli02.c

unpv13e/advio/tcpcli03.c

unpv13e/advio/tcpcli04.c

unpv13e/advio/tcpserv02.c

unpv13e/advio/udpcli01.c

unpv13e/advio/udpcli02.c

unpv13e/advio/udpcli03.c

unpv13e/advio/udpserv01.c

unpv13e/advio/udpserv03.c

unpv13e/advio/udpserv03.lc

unpv13e/advio/udpserv04.c

unpv13e/advio/udpserv04.lc

unpv13e/bcast/

unpv13e/bcast/Makefile

unpv13e/bcast/dgclibcast1.c

unpv13e/bcast/dgclibcast1.lc

unpv13e/bcast/dgclibcast2.c

unpv13e/bcast/dgclibcast3.c

unpv13e/bcast/dgclibcast3.lc

unpv13e/bcast/dgclibcast4.c

unpv13e/bcast/dgclibcast4.lc

unpv13e/bcast/dgclibcast5.c

unpv13e/bcast/dgclibcast5.lc

unpv13e/bcast/dgclibcast6.c

unpv13e/bcast/dgclibcast6.lc

unpv13e/bcast/udpcli01.c

unpv13e/bcast/udpcli02.c

unpv13e/bcast/udpcli03.c

unpv13e/bcast/udpcli04.c

unpv13e/bcast/udpcli05.c

unpv13e/bcast/udpcli06.c

unpv13e/debug/

unpv13e/debug/Makefile

unpv13e/debug/backlog.c

unpv13e/debug/backlog.lc

unpv13e/debug/qlen.c

unpv13e/debug/qlen.lc

unpv13e/debug/test01.c

unpv13e/debug/test01.lc

unpv13e/debug/test02.c

unpv13e/debug/test03.c

unpv13e/debug/test04.c

unpv13e/debug/test05.c

unpv13e/debug/test06.c

unpv13e/debug/unpxti.h

unpv13e/icmpd/

unpv13e/icmpd/Makefile

unpv13e/icmpd/dgcli01.c

unpv13e/icmpd/dgcli01.lc

unpv13e/icmpd/icmpd.c

unpv13e/icmpd/icmpd.h

unpv13e/icmpd/icmpd.lc

unpv13e/icmpd/readable_conn.c

unpv13e/icmpd/readable_conn.lc

unpv13e/icmpd/readable_listen.c

unpv13e/icmpd/readable_listen.lc

unpv13e/icmpd/readable_v4.c

unpv13e/icmpd/readable_v4.lc

unpv13e/icmpd/readable_v6.c

unpv13e/icmpd/readable_v6.lc

unpv13e/icmpd/script.1

unpv13e/icmpd/script.2

unpv13e/icmpd/script.3

unpv13e/icmpd/script.4

unpv13e/icmpd/udpcli01.c

unpv13e/icmpd/unpicmpd.h

unpv13e/inetd/

unpv13e/inetd/Makefile

unpv13e/inetd/daytimetcpsrv2.c

unpv13e/inetd/daytimetcpsrv3.c

unpv13e/inetd/daytimetcpsrv3.lc

unpv13e/intro/

unpv13e/intro/Makefile

unpv13e/intro/byteorder.c

unpv13e/intro/daytimetcpcli.c

unpv13e/intro/daytimetcpcli1.c

unpv13e/intro/daytimetcpcli2.c

unpv13e/intro/daytimetcpcli3.c

unpv13e/intro/daytimetcpcliv6.c

unpv13e/intro/daytimetcpsrv.c

unpv13e/intro/daytimetcpsrv.lc

unpv13e/intro/daytimetcpsrv1.c

unpv13e/intro/daytimetcpsrv2.c

unpv13e/intro/daytimetcpsrv3.c

unpv13e/intro/daytimetcpsrvv6.c

unpv13e/intro/truss.solaris.2.6

unpv13e/intro/truss.unixware.2.1

unpv13e/ioctl/

unpv13e/ioctl/Makefile

unpv13e/ioctl/Progs.siocgifconf

unpv13e/ioctl/Script.solaris

unpv13e/ioctl/lsif01.c

unpv13e/ioctl/lsif02.c

unpv13e/ioctl/prifinfo.c

unpv13e/ioctl/prifinfo.lc

unpv13e/ioctl/prmac.c

unpv13e/ioctl/test1.c

unpv13e/ipopts/

unpv13e/ipopts/Makefile

unpv13e/ipopts/dgechoprintroute.c

unpv13e/ipopts/sigchldwaitpid.c

unpv13e/ipopts/sourceroute.c

unpv13e/ipopts/sourceroute.lc

unpv13e/ipopts/sourceroute6.c

unpv13e/ipopts/tcpcli01.c

unpv13e/ipopts/tcpserv01.c

unpv13e/ipopts/udpcli01.c

unpv13e/ipopts/udpserv01.c

unpv13e/key/

unpv13e/key/Makefile

unpv13e/key/add.c

unpv13e/key/dump.c

unpv13e/key/name.c

unpv13e/key/printsadbmsg.c

unpv13e/key/register.c

unpv13e/key/unp.h

unpv13e/lib/

unpv13e/lib/Makefile

unpv13e/lib/addrinfo.h

unpv13e/lib/connect_nonb.c

unpv13e/lib/connect_nonb.lc

unpv13e/lib/connect_timeo.c

unpv13e/lib/connect_timeo.lc

unpv13e/lib/daemon_inetd.c

unpv13e/lib/daemon_inetd.lc

unpv13e/lib/daemon_init.c

unpv13e/lib/dg_cli.c

unpv13e/lib/dg_echo.c

unpv13e/lib/error.c

unpv13e/lib/family_to_level.c

unpv13e/lib/get_ifi_info.c

unpv13e/lib/get_ifi_info.lc

unpv13e/lib/gf_time.c

unpv13e/lib/host_serv.c

unpv13e/lib/host_serv.lc

unpv13e/lib/hstrerror.c

unpv13e/lib/my_addrs.c

unpv13e/lib/if_indextoname.c

unpv13e/lib/if_nameindex.c

unpv13e/lib/if_nametoindex.c

unpv13e/lib/in6addr_any.c

unpv13e/lib/mcast_get_if.c

unpv13e/lib/mcast_get_loop.c

unpv13e/lib/mcast_get_ttl.c

unpv13e/lib/mcast_join.c

unpv13e/lib/mcast_join.lc

unpv13e/lib/mcast_leave.c

unpv13e/lib/mcast_set_if.c

unpv13e/lib/mcast_set_loop.c

unpv13e/lib/mcast_set_loop.lc

unpv13e/lib/mcast_set_ttl.c

unpv13e/lib/my_addrs.lc

unpv13e/lib/pselect.c

unpv13e/lib/pselect.lc

unpv13e/lib/read_fd.c

unpv13e/lib/read_fd.lc

unpv13e/lib/readable_timeo.c

unpv13e/lib/readable_timeo.lc

unpv13e/lib/readline.c

unpv13e/lib/readline.lc

unpv13e/lib/readn.c

unpv13e/lib/readn.lc

unpv13e/lib/rtt.c

unpv13e/lib/rtt.lc

unpv13e/lib/signal.c

unpv13e/lib/signal.lc

unpv13e/lib/signal_intr.c

unpv13e/lib/snprintf.c

unpv13e/lib/sock_bind_wild.c

unpv13e/lib/sock_cmp_addr.c

unpv13e/lib/sock_cmp_port.c

unpv13e/lib/sock_get_port.c

unpv13e/lib/sock_ntop.c

unpv13e/lib/sock_ntop.lc

unpv13e/lib/sock_ntop_host.c

unpv13e/lib/sock_set_addr.c

unpv13e/lib/sock_set_port.c

unpv13e/lib/sock_set_wild.c

unpv13e/lib/sockatmark.c

unpv13e/lib/sockfd_to_family.c

unpv13e/lib/str_cli.c

unpv13e/lib/sockfd_to_family.lc

unpv13e/lib/str_cli.lc

unpv13e/lib/str_echo.c

unpv13e/lib/str_echo.lc

unpv13e/lib/tcp_connect.c

unpv13e/lib/tcp_connect.lc

unpv13e/lib/tcp_listen.c

unpv13e/lib/tcp_listen.lc

unpv13e/lib/tv_sub.c

unpv13e/lib/udp_client.c

unpv13e/lib/udp_client.lc

unpv13e/lib/udp_connect.c

unpv13e/lib/udp_connect.lc

unpv13e/lib/udp_server.c

unpv13e/lib/udp_server.lc

unpv13e/lib/unp.h

unpv13e/lib/unp.lh

unpv13e/lib/unpifi.h

unpv13e/lib/unprtt.h

unpv13e/lib/unprtt.lh

unpv13e/lib/unpthread.h

unpv13e/lib/wraplib.c

unpv13e/lib/wrappthread.c

unpv13e/lib/wrappthread.lc

unpv13e/lib/wrapsock.c

unpv13e/lib/wrapsock.lc

unpv13e/lib/wrapstdio.c

unpv13e/lib/wrapunix.c

unpv13e/lib/writable_timeo.c

unpv13e/lib/write_fd.c

unpv13e/lib/write_fd.lc

unpv13e/lib/writen.c

unpv13e/lib/writen.lc

unpv13e/libfree/

unpv13e/libfree/Make.tar

unpv13e/libfree/Makefile

unpv13e/libfree/README

unpv13e/libfree/README.getaddrinfo

unpv13e/libfree/addrinfo.h

unpv13e/libfree/getaddrinfo.c

unpv13e/libfree/getnameinfo.c

unpv13e/libfree/in_cksum.c

unpv13e/libfree/inet_aton.c

unpv13e/libfree/inet_ntop.c

unpv13e/libfree/inet_ntop_ipv4.c

unpv13e/libfree/inet_ntop_ipv4.lc

unpv13e/libfree/inet_pton.c

unpv13e/libfree/inet_pton_ipv4.c

unpv13e/libfree/inet_pton_ipv4.lc

unpv13e/libfree/test_ascii2addr.c

unpv13e/libfree/test_getservbyname_r.c

unpv13e/libfree/test_inet_pton.c

unpv13e/libroute/

unpv13e/libroute/Makefile

unpv13e/libroute/get_rtaddrs.c

unpv13e/libroute/get_rtaddrs.lc

unpv13e/libroute/if_indextoname.c

unpv13e/libroute/if_indextoname.lc

unpv13e/libroute/if_nameindex.c

unpv13e/libroute/if_nameindex.lc

unpv13e/libroute/if_nametoindex.c

unpv13e/libroute/if_nametoindex.lc

unpv13e/libroute/net_rt_dump.c

unpv13e/libroute/net_rt_iflist.c

unpv13e/libroute/net_rt_iflist.lc

unpv13e/libroute/sock_masktop.c

unpv13e/libroute/unproute.h

unpv13e/mcast/

unpv13e/mcast/Makefile

unpv13e/mcast/dgclibcast1.c

unpv13e/mcast/dgclimcast5.c

unpv13e/mcast/dgclimcast6.c

unpv13e/mcast/main.c

unpv13e/mcast/recv.c

unpv13e/mcast/send.c

unpv13e/mcast/udpcli01.c

unpv13e/mcast/udpcli05.c

unpv13e/mcast/udpcli06.c

unpv13e/mcast/udpserv01.c

unpv13e/mysdr/

unpv13e/mysdr/Makefile

unpv13e/mysdr/loop.c

unpv13e/mysdr/loop.lc

unpv13e/mysdr/main.c

unpv13e/mysdr/main.lc

unpv13e/mysdr/mysdr.h

unpv13e/mysdr/script.1

unpv13e/mysdr/script.2

unpv13e/names/

unpv13e/names/Makefile

unpv13e/names/daytimetcpcli.c

unpv13e/names/daytimetcpcli1.c

unpv13e/names/daytimetcpcli1.lc

unpv13e/names/daytimetcpcli2.c

unpv13e/names/daytimetcpcli2.lc

unpv13e/names/daytimetcpcli3.c

unpv13e/names/daytimetcpcli3.lc

unpv13e/names/daytimetcpsrv1.c

unpv13e/names/daytimetcpsrv2.c

unpv13e/names/daytimetcpsrv3.c

unpv13e/names/daytimetcpsrv4.c

unpv13e/names/daytimeudpcli1.c

unpv13e/names/daytimeudpcli1.lc

unpv13e/names/daytimeudpcli2.c

unpv13e/names/daytimeudpsrv2.c

unpv13e/names/daytimeudpsrv3.c

unpv13e/names/hostent.c

unpv13e/names/hostent.lc

unpv13e/names/hostent2.c

unpv13e/names/hostent2.lc

unpv13e/names/hostent3.c

unpv13e/names/myaddrs1.c

unpv13e/names/myaddrs1.lc

unpv13e/names/netent.c

unpv13e/names/prmyaddrs.c

unpv13e/names/prmyaddrs1.c

unpv13e/names/prmyaddrs1.lc

unpv13e/names/test1.c

unpv13e/names/test2.c

unpv13e/names/udp_server_reuseaddr.c

unpv13e/nonblock/

unpv13e/nonblock/Makefile

unpv13e/nonblock/daytimetcpcli.c

unpv13e/nonblock/doit.1

unpv13e/nonblock/home_page.c

unpv13e/nonblock/script.1.sh

unpv13e/nonblock/script.1.tcpd

unpv13e/nonblock/start_connect.c

unpv13e/nonblock/strclifork.c

unpv13e/nonblock/strclinonb.c

unpv13e/nonblock/strclinonb.lc

unpv13e/nonblock/tcpcli01.c

unpv13e/nonblock/tcpcli02.c

unpv13e/nonblock/tcpcli03.c

unpv13e/nonblock/tcpcli03.lc

unpv13e/nonblock/tcpcli04.c

unpv13e/nonblock/tcpservselect03.c

unpv13e/nonblock/web.c

unpv13e/nonblock/web.h

unpv13e/nonblock/web.lc

unpv13e/nonblock/write_get_cmd.c

unpv13e/oob/

unpv13e/oob/Makefile

unpv13e/oob/heartbeatcli.c

unpv13e/oob/heartbeatserv.c

unpv13e/oob/sigchldwaitpid.c

unpv13e/oob/strcliselect02.c

unpv13e/oob/strecho02.c

unpv13e/oob/tcpcli02.c

unpv13e/oob/tcprecv01.c

unpv13e/oob/tcprecv01.lc

unpv13e/oob/tcprecv02.c

unpv13e/oob/tcprecv02.lc

unpv13e/oob/tcprecv03.c

unpv13e/oob/tcprecv03p.c

unpv13e/oob/tcprecv03p.lc

unpv13e/oob/tcprecv04.c

unpv13e/oob/tcprecv04.lc

unpv13e/oob/tcprecv05.c

unpv13e/oob/tcprecv06.c

unpv13e/oob/tcpsend01.c

unpv13e/oob/tcpsend01.lc

unpv13e/oob/tcpsend02.c

unpv13e/oob/tcpsend03.c

unpv13e/oob/tcpsend04.c

unpv13e/oob/tcpsend04.lc

unpv13e/oob/tcpsend05.c

unpv13e/oob/tcpsend05.lc

unpv13e/oob/tcpsend06.c

unpv13e/oob/tcpsend06.lc

unpv13e/oob/tcpserv02.c

unpv13e/ping/

unpv13e/ping/old/

unpv13e/ping/old/icmp6.h

unpv13e/ping/old/ip6.h

unpv13e/ping/Makefile

unpv13e/ping/bsdping.c

unpv13e/ping/init_v6.c

unpv13e/ping/main.c

unpv13e/ping/main.lc

unpv13e/ping/ping.h

unpv13e/ping/ping_v4.c

unpv13e/ping/proc_v4.c

unpv13e/ping/proc_v4.lc

unpv13e/ping/proc_v6.c

unpv13e/ping/proc_v6.lc

unpv13e/ping/readloop.c

unpv13e/ping/send_v4.c

unpv13e/ping/send_v6.c

unpv13e/ping/sig_alrm.c

unpv13e/ping/sig_alrm.lc

unpv13e/ping/tv_sub.c

unpv13e/route/

unpv13e/route/Makefile

unpv13e/route/checkudpsum.c

unpv13e/route/get_ifi_info.c

unpv13e/route/get_ifi_info.lc

unpv13e/route/getrt.c

unpv13e/route/getrt.lc

unpv13e/route/mynetstat.c

unpv13e/route/prifindex.c

unpv13e/route/prifinfo.c

unpv13e/route/prifname.c

unpv13e/route/prifnameindex.c

unpv13e/route/unproute.h

unpv13e/rtt/

unpv13e/rtt/Makefile

unpv13e/rtt/dg_cli.c

unpv13e/rtt/dg_cli.lc

unpv13e/rtt/dg_echo.c

unpv13e/rtt/dg_send_recv.c

unpv13e/rtt/dg_send_recv.lc

unpv13e/rtt/rtt.out.kumba.1

unpv13e/rtt/rtt.out.kumba.2

unpv13e/rtt/rtt.out.vangogh.1

unpv13e/rtt/rtt.out.vangogh.2

unpv13e/rtt/rtt.vals.kumba.1

unpv13e/rtt/rtt.vals.vangogh.1

unpv13e/rtt/udpcli01.c

unpv13e/rtt/unprtt.h

unpv13e/sctp/

unpv13e/sctp/Makefile

unpv13e/sctp/sctp_addr_to_associd.c

unpv13e/sctp/sctp_addr_to_associd.lc

unpv13e/sctp/sctp_bindargs.c

unpv13e/sctp/sctp_bindargs.lc

unpv13e/sctp/sctp_check_notify.c

unpv13e/sctp/sctp_check_notify.lc

unpv13e/sctp/sctp_displayevents.c

unpv13e/sctp/sctp_displayevents.lc

unpv13e/sctp/sctp_getnostrm.c

unpv13e/sctp/sctp_modify_hb.c

unpv13e/sctp/sctp_modify_hb.lc

unpv13e/sctp/sctp_pdapircv.c

unpv13e/sctp/sctp_pdapircv.lc

unpv13e/sctp/sctp_print_addrs.c

unpv13e/sctp/sctp_print_addrs.lc

unpv13e/sctp/sctp_strcli.c

unpv13e/sctp/sctp_strcli.lc

unpv13e/sctp/sctp_strcli1.c

unpv13e/sctp/sctp_strcli1.lc

unpv13e/sctp/sctp_strcli_un.c

unpv13e/sctp/sctp_strcli_un.lc

unpv13e/sctp/sctp_strcliecho.c

unpv13e/sctp/sctp_strcliecho.lc

unpv13e/sctp/sctp_strcliecho2.c

unpv13e/sctp/sctp_strcliecho2.lc

unpv13e/sctp/sctp_wrapper.c

unpv13e/sctp/sctpclient01.c

unpv13e/sctp/sctpclient01.lc

unpv13e/sctp/sctpclient02.c

unpv13e/sctp/sctpclient02.lc

unpv13e/sctp/sctpclient04.c

unpv13e/sctp/sctpclient04.lc

unpv13e/sctp/sctpserv01.c

unpv13e/sctp/sctpserv01.lc

unpv13e/sctp/sctpserv02.c

unpv13e/sctp/sctpserv02.lc

unpv13e/sctp/sctpserv03.c

unpv13e/sctp/sctpserv03.lc

unpv13e/sctp/sctpserv04.c

unpv13e/sctp/sctpserv04.lc

unpv13e/sctp/sctpserv05.c

unpv13e/sctp/sctpserv05.lc

unpv13e/sctp/sctpserv06.c

unpv13e/sctp/sctpserv06.lc

unpv13e/sctp/sctpserv07.c

unpv13e/sctp/sctpserv07.lc

unpv13e/sctp/sctpserv_fork.c

unpv13e/sctp/sctpserv_fork.lc

unpv13e/sctp/unp.h

unpv13e/select/

unpv13e/select/Makefile

unpv13e/select/strcliselect01.c

unpv13e/select/strcliselect02.c

unpv13e/select/strcliselect02.lc

unpv13e/select/tcpcli01.c

unpv13e/select/tcpcli02.c

unpv13e/select/tcpcli03.c

unpv13e/server/

unpv13e/server/Makefile

unpv13e/server/child.h

unpv13e/server/child.lh

unpv13e/server/child02.c

unpv13e/server/child02.lc

unpv13e/server/child02l.c

unpv13e/server/child02m.c

unpv13e/server/child03.c

unpv13e/server/child03m.c

unpv13e/server/child04.c

unpv13e/server/child05.c

unpv13e/server/child05.lc

unpv13e/server/client.c

unpv13e/server/clientrst.c

unpv13e/server/lock_fcntl.c

unpv13e/server/lock_fcntl.lc

unpv13e/server/lock_pthread.c

unpv13e/server/lock_pthread.lc

unpv13e/server/meter.c

unpv13e/server/pr_cpu_time.c

unpv13e/server/pthread07.c

unpv13e/server/pthread07.h

unpv13e/server/pthread07.lc

unpv13e/server/pthread08.c

unpv13e/server/pthread08.h

unpv13e/server/pthread08.lc

unpv13e/server/pthread09.c

unpv13e/server/pthread09.h

unpv13e/server/readline.c

unpv13e/server/readline_r.c

unpv13e/server/readline_r.h

unpv13e/server/serv00.c

unpv13e/server/serv01.c

unpv13e/server/serv01.lc

unpv13e/server/serv02.c

unpv13e/server/serv02.lc

unpv13e/server/serv02m.c

unpv13e/server/serv03.c

unpv13e/server/serv03m.c

unpv13e/server/serv04.c

unpv13e/server/serv05.c

unpv13e/server/serv05.lc

unpv13e/server/serv06.c

unpv13e/server/serv06.lc

unpv13e/server/serv07.c

unpv13e/server/serv07.lc

unpv13e/server/serv08.c

unpv13e/server/serv08.lc

unpv13e/server/serv09.c

unpv13e/server/sig_chld_waitpid.c

unpv13e/server/unpthread.h

unpv13e/server/web_child.c

unpv13e/server/web_child_r.c

unpv13e/sigio/

unpv13e/sigio/Makefile

unpv13e/sigio/dgcli01.c

unpv13e/sigio/dgecho01.c

unpv13e/sigio/dgecho01.lc

unpv13e/sigio/script.1

unpv13e/sigio/script.2

unpv13e/sigio/udpcli01.c

unpv13e/sigio/udpserv01.c

unpv13e/sockopt/

unpv13e/sockopt/Makefile

unpv13e/sockopt/checkopts.c

unpv13e/sockopt/checkopts.lc

unpv13e/sockopt/prdefaults.c

unpv13e/sockopt/rcvbuf.c

unpv13e/sockopt/rcvbufset.c

unpv13e/sockopt/sockopt.c

unpv13e/sparc64-unknown-freebsd5.1/

unpv13e/sparc64-unknown-freebsd5.1/config.h

unpv13e/ssntp/

unpv13e/ssntp/Makefile

unpv13e/ssntp/main.c

unpv13e/ssntp/main.lc

unpv13e/ssntp/ntp.h

unpv13e/ssntp/sntp.h

unpv13e/ssntp/sntp_proc.c

unpv13e/streams/

unpv13e/streams/stream_dg/

unpv13e/streams/stream_dg/Makefile

unpv13e/streams/stream_dg/client.c

unpv13e/streams/stream_dg/net_stream.c

unpv13e/streams/stream_dg/server.c

unpv13e/streams/Makefile

unpv13e/streams/strlist_sock.c

unpv13e/streams/strlist_xti.c

unpv13e/streams/tpi_bind.c

unpv13e/streams/tpi_close.c

unpv13e/streams/tpi_close.lc

unpv13e/streams/tpi_connect.c

unpv13e/streams/tpi_connect.lc

unpv13e/streams/tpi_daytime.c

unpv13e/streams/tpi_daytime.h

unpv13e/streams/tpi_read.c

unpv13e/streams/tpi_read.lc

unpv13e/streams/unpxti.h

unpv13e/tcpcliserv/

unpv13e/tcpcliserv/Makefile

unpv13e/tcpcliserv/sigchldwait.c

unpv13e/tcpcliserv/sigchldwait.lc

unpv13e/tcpcliserv/sigchldwaitpid.c

unpv13e/tcpcliserv/sigchldwaitpid.lc

unpv13e/tcpcliserv/str_cli08.c

unpv13e/tcpcliserv/str_cli09.c

unpv13e/tcpcliserv/str_cli11.c

unpv13e/tcpcliserv/str_cli11.lc

unpv13e/tcpcliserv/str_echo08.c

unpv13e/tcpcliserv/str_echo08.lc

unpv13e/tcpcliserv/str_echo09.c

unpv13e/tcpcliserv/sum.h

unpv13e/tcpcliserv/tcpcli01.c

unpv13e/tcpcliserv/tcpcli01.lc

unpv13e/tcpcliserv/tcpcli04.c

unpv13e/tcpcliserv/tcpcli05.c

unpv13e/tcpcliserv/tcpcli06.c

unpv13e/tcpcliserv/tcpcli07.c

unpv13e/tcpcliserv/tcpcli08.c

unpv13e/tcpcliserv/tcpcli09.c

unpv13e/tcpcliserv/tcpcli10.c

unpv13e/tcpcliserv/tcpcli11.c

unpv13e/tcpcliserv/tcpserv01.c

unpv13e/tcpcliserv/tcpserv01.lc

unpv13e/tcpcliserv/tcpserv02.c

unpv13e/tcpcliserv/tcpserv03.c

unpv13e/tcpcliserv/tcpserv04.c

unpv13e/tcpcliserv/tcpserv04.lc

unpv13e/tcpcliserv/tcpserv08.c

unpv13e/tcpcliserv/tcpserv09.c

unpv13e/tcpcliserv/tcpservpoll01.c

unpv13e/tcpcliserv/tcpservpoll01.lc

unpv13e/tcpcliserv/tcpservselect01.c

unpv13e/tcpcliserv/tcpservselect01.lc

unpv13e/tcpcliserv/tsigpipe.c

unpv13e/test/

unpv13e/test/Makefile

unpv13e/test/accept_eintr.c

unpv13e/test/funcs.c

unpv13e/test/readline.h

unpv13e/test/readline1.c

unpv13e/test/readline1.lc

unpv13e/test/readline2.c

unpv13e/test/readline3.c

unpv13e/test/test.h

unpv13e/test/test1.c

unpv13e/test/test2.c

unpv13e/test/tisfdtype.c

unpv13e/test/treadline1.c

unpv13e/test/treadline2.c

unpv13e/test/treadline3.c

unpv13e/test/tshutdown.c

unpv13e/test/tsnprintf.c

unpv13e/threads/

unpv13e/threads/Makefile

unpv13e/threads/doit.1

unpv13e/threads/doit.2

unpv13e/threads/example01.c

unpv13e/threads/example01.lc

unpv13e/threads/example02.c

unpv13e/threads/example02.lc

unpv13e/threads/example03.c

unpv13e/threads/readline.c

unpv13e/threads/readline.lc

unpv13e/threads/script.example01

unpv13e/threads/script.example02

unpv13e/threads/strclithread.c

unpv13e/threads/strclithread.lc

unpv13e/threads/strclithread2.c

unpv13e/threads/tcpcli01.c

unpv13e/threads/tcpcli02.c

unpv13e/threads/tcpserv01.c

unpv13e/threads/tcpserv02.c

unpv13e/threads/test01.c

unpv13e/threads/test02.c

unpv13e/threads/web01.c

unpv13e/threads/test03.c

unpv13e/threads/test04.c

unpv13e/threads/test05.c

unpv13e/threads/unpthread.h

unpv13e/threads/web01.lc

unpv13e/threads/web02.c

unpv13e/threads/web03.c

unpv13e/threads/web03.lc

unpv13e/traceroute/

unpv13e/traceroute/Makefile

unpv13e/traceroute/icmpcode_v4.c

unpv13e/traceroute/icmpcode_v6.c

unpv13e/traceroute/main.c

unpv13e/traceroute/main.lc

unpv13e/traceroute/recv_v4.c

unpv13e/traceroute/recv_v4.lc

unpv13e/traceroute/recv_v6.c

unpv13e/traceroute/recv_v6.lc

unpv13e/traceroute/sig_alrm.c

unpv13e/traceroute/trace.h

unpv13e/traceroute/trace.lh

unpv13e/traceroute/traceloop.c

unpv13e/traceroute/traceloop.lc

unpv13e/traceroute/tv_sub.c

unpv13e/udpcksum/

unpv13e/udpcksum/Makefile

unpv13e/udpcksum/cleanup.c

unpv13e/udpcksum/cleanup.lc

unpv13e/udpcksum/main.c

unpv13e/udpcksum/main.lc

unpv13e/udpcksum/pcap.c

unpv13e/udpcksum/pcap.lc

unpv13e/udpcksum/senddnsquery-libnet.c

unpv13e/udpcksum/senddnsquery-libnet.lc

unpv13e/udpcksum/senddnsquery-raw.c

unpv13e/udpcksum/senddnsquery-raw.lc

unpv13e/udpcksum/udpcksum.c

unpv13e/udpcksum/udpcksum.h

unpv13e/udpcksum/udpcksum.lc

unpv13e/udpcksum/udpread.c

unpv13e/udpcksum/udpread.c.bad

unpv13e/udpcksum/udpread.lc

unpv13e/udpcksum/udpwrite.c

unpv13e/udpcksum/udpwrite.lc

unpv13e/udpcliserv/

unpv13e/udpcliserv/Makefile

unpv13e/udpcliserv/dgcliaddr.c

unpv13e/udpcliserv/dgclibig.c

unpv13e/udpcliserv/dgclibig.lc

unpv13e/udpcliserv/dgcliconnect.c

unpv13e/udpcliserv/dgcliconnect.lc

unpv13e/udpcliserv/dgcliinetaddr.c

unpv13e/udpcliserv/dgcliloop1.c

unpv13e/udpcliserv/dgcliloop3.c

unpv13e/udpcliserv/dgecholoop1.c

unpv13e/udpcliserv/dgecholoop2.c

unpv13e/udpcliserv/dgecholoop2.lc

unpv13e/udpcliserv/sigchldwaitpid.c

unpv13e/udpcliserv/udpcli01.c

unpv13e/udpcliserv/udpcli02.c

unpv13e/udpcliserv/udpcli03.c

unpv13e/udpcliserv/udpcli04.c

unpv13e/udpcliserv/udpcli05.c

unpv13e/udpcliserv/udpcli06.c

unpv13e/udpcliserv/udpcli08.c

unpv13e/udpcliserv/udpcli09.c

unpv13e/udpcliserv/udpcli10.c

unpv13e/udpcliserv/udpserv01.c

unpv13e/udpcliserv/udpserv06.c

unpv13e/udpcliserv/udpserv07.c

unpv13e/udpcliserv/udpservselect01.c

unpv13e/udpcliserv/udpservselect01.lc

unpv13e/unixdomain/

unpv13e/unixdomain/Makefile

unpv13e/unixdomain/daytimetcpcli.c

unpv13e/unixdomain/daytimetcpsrv2.c

unpv13e/unixdomain/mycat.c

unpv13e/unixdomain/mycat.lc

unpv13e/unixdomain/myopen.c

unpv13e/unixdomain/openfile.c

unpv13e/unixdomain/readcred.c

unpv13e/unixdomain/sigchldwaitpid.c

unpv13e/unixdomain/strecho.c

unpv13e/unixdomain/testfcred.c

unpv13e/unixdomain/tfcred01.c

unpv13e/unixdomain/unixbind.c

unpv13e/unixdomain/unixbind.lc

unpv13e/unixdomain/unixdgcli01.c

unpv13e/unixdomain/unixdgcli01.lc

unpv13e/unixdomain/unixdgserv01.c

unpv13e/unixdomain/unixstrcli01.c

unpv13e/unixdomain/unixstrserv01.c

unpv13e/unixdomain/unixstrserv01.lc

unpv13e/unixdomain/unixstrserv02.c

unpv13e/libgai/

unpv13e/libgai/old/

unpv13e/libgai/old/ga_unixstruct.c

unpv13e/libgai/old/savecopy.c

unpv13e/libgai/Makefile

unpv13e/libgai/addrinfo.h

unpv13e/libgai/freeaddrinfo.c

unpv13e/libgai/ga_aistruct.c

unpv13e/libgai/ga_aistruct.lc

unpv13e/libgai/ga_clone.c

unpv13e/libgai/ga_clone.lc

unpv13e/libgai/ga_echeck.c

unpv13e/libgai/ga_echeck.lc

unpv13e/libgai/ga_nsearch.c

unpv13e/libgai/ga_nsearch.lc

unpv13e/libgai/ga_port.c

unpv13e/libgai/ga_port.lc

unpv13e/libgai/ga_serv.c

unpv13e/libgai/ga_serv.lc

unpv13e/libgai/ga_unix.c

unpv13e/libgai/ga_unix.lc

unpv13e/libgai/gai_hdr.h

unpv13e/libgai/gai_hdr.lh

unpv13e/libgai/gai_strerror.c

unpv13e/libgai/getaddrinfo.c

unpv13e/libgai/getaddrinfo.lc

unpv13e/libgai/getnameinfo.c

unpv13e/libgai/getnameinfo.lc

unpv13e/libgai/gn_ipv46.c

unpv13e/libgai/gn_ipv46.lc

unpv13e/libgai/test1.c

unpv13e/libgai/testga.c

unpv13e/sock/

unpv13e/sock/Makefile

unpv13e/sock/README

unpv13e/sock/TODO

unpv13e/sock/buffers.c

unpv13e/sock/cliopen.c

unpv13e/sock/crlf.c

unpv13e/sock/error.c

unpv13e/sock/loop.c

unpv13e/sock/looptcp.c

unpv13e/sock/loopudp.c

unpv13e/sock/main.c

unpv13e/sock/multicast.c

unpv13e/sock/ourhdr.h

unpv13e/sock/pattern.c

unpv13e/sock/servopen.c

unpv13e/sock/sinktcp.c

unpv13e/sock/sinkudp.c

unpv13e/sock/sleepus.c

unpv13e/sock/sock.h

unpv13e/sock/sock.in

unpv13e/sock/sockopts.c

unpv13e/sock/sourceroute.c

unpv13e/sock/sourcesink.c

unpv13e/sock/sourcetcp.c

unpv13e/sock/sourceudp.c

unpv13e/sock/strerror.c

unpv13e/sock/tellwait.c

unpv13e/sock/write.c

unpv13e/sock/writen.c

edward@ubuntu:~/work$ ls

unpv13e  unpv13e.tar.gz

edward@ubuntu:~/work$ cd unpv13e/

edward@ubuntu:~/work/unpv13e$ ls

aclocal.m4    intro            nonblock                    ssntp

advio         ioctl            oob                         streams

bcast         ipopts           ping                        tcpcliserv

config.guess  key              README                      test

config.h.in   lib              route                       threads

config.sub    libfree          rtt                         traceroute

configure     libgai           sctp                        udpcksum

configure.in  libroute         select                      udpcliserv

debug         Make.defines.in  server                      unixdomain

DISCLAIMER    Makefile.in      sigio                       VERSION

icmpd         mcast            sock

inetd         mysdr            sockopt

install-sh    names            sparc64-unknown-freebsd5.1

edward@ubuntu:~/work/unpv13e$ ./configure

checking build system type... x86_64-unknown-linux-gnu

checking host system type... x86_64-unknown-linux-gnu

checking for gcc... gcc

checking for C compiler default output... a.out

checking whether the C compiler works... yes

checking whether we are cross compiling... no

checking for suffix of executables...

checking for suffix of object files... o

checking whether we are using the GNU C compiler... yes

checking whether gcc accepts -g... yes

checking for gcc option to accept ANSI C... none needed

checking for ranlib... ranlib

checking for pthread_create in -lpthread... yes

checking for t_open in -lnsl... no

checking for library containing socket... none required

checking for /usr/local/bind/lib/libbind.a... no

checking for /home/edward/libbind.a... no

checking for /home/edward/libresolv.a... no

checking for res_init in -lresolv... no

checking for t_open in -lxti... no

checking for /home/edward/libunp.a... no

checking for /home/edward/libunpxti.a... no

checking how to run the C preprocessor... gcc -E

checking for egrep... grep -E

checking for ANSI C header files... yes

checking for sys/types.h... yes

checking for sys/socket.h... yes

checking for sys/time.h... yes

checking for time.h... yes

checking for netinet/in.h... yes

checking for arpa/inet.h... yes

checking for errno.h... yes

checking for fcntl.h... yes

checking for netdb.h... yes

checking for signal.h... yes

checking for stdio.h... yes

checking for stdlib.h... yes

checking for string.h... yes

checking for sys/stat.h... yes

checking for sys/uio.h... yes

checking for unistd.h... yes

checking for sys/wait.h... yes

checking for sys/un.h... yes

checking for sys/param.h... yes

checking for sys/select.h... yes

checking for sys/sysctl.h... yes

checking for poll.h... yes

checking for sys/event.h... no

checking for strings.h... yes

checking for sys/ioctl.h... yes

checking for sys/filio.h... no

checking for sys/sockio.h... no

checking for pthread.h... yes

checking for net/if_dl.h... no

checking for xti.h... no

checking for xti_inet.h... no

checking for netconfig.h... no

checking for netdir.h... no

checking for stropts.h... yes

checking whether time.h and sys/time.h may both be included... yes

checking if uint8_t defined... yes

checking if int16_t defined... yes

checking if uint16_t defined... yes

checking if int32_t defined... yes

checking if uint32_t defined... yes

checking if size_t defined... yes

checking if ssize_t defined... yes

checking if socklen_t defined... yes

checking if sa_family_t defined... yes

checking if t_scalar_t defined... yes

checking if t_uscalar_t defined... yes

checking for struct sockaddr.sa_len... no

checking for struct sockaddr_storage... yes

checking for struct sockaddr_storage.ss_family... yes

checking for struct msghdr.msg_control... yes

checking for struct ifreq.ifr_mtu... yes

checking for getaddrinfo function prototype in netdb.h... yes

checking for getnameinfo function prototype in netdb.h... yes

checking for gethostname function prototype in unistd.h... yes

checking for getrusage function prototype in sys/resource.h... yes

checking for hstrerror function prototype in netdb.h... yes

checking for if_nametoindex function prototype in net/if.h... yes

checking for inet_aton function prototype in arpa/inet.h... yes

checking for inet_pton function prototype in arpa/inet.h... yes

checking for pselect function prototype in sys/select.h... yes

checking for snprintf function prototype in stdio.h... yes

checking for sockatmark function prototype in sys/socket.h... yes

checking for struct addrinfo... yes

checking for struct if_nameindex... yes

checking for struct sockaddr_dl... no

checking for struct timespec... yes

checking for /dev/tcp... no

checking for /dev/xti/tcp... no

checking for /dev/streams/xtiso/tcp... no

checking for bzero... yes

checking for getaddrinfo... yes

checking for gethostname... yes

checking for gethostbyname2... yes

checking for gethostbyname_r... yes

checking for getnameinfo... yes

checking for hstrerror... yes

checking for if_nametoindex... yes

checking for inet_aton... yes

checking for inet_pton... yes

checking for inet6_rth_init... yes

checking for kqueue... no

checking for kevent... no

checking for mkstemp... yes

checking for poll... yes

checking for pselect... yes

checking for snprintf... yes

checking for sockatmark... yes

checking for vsnprintf... yes

checking for IPv4 support... yes

checking for IPv6 support... yes

checking for Unix domain sockets... yes

checking for multicast support... yes

checking for -I/home/edward/doc/unp2ev1/src/include... no

configure: creating ./config.status

config.status: creating Makefile

config.status: creating Make.defines

config.status: creating config.h

edward@ubuntu:~/work/unpv13e$ cd lib

edward@ubuntu:~/work/unpv13e/lib$ make

gcc -I../lib -g -O2 -D_REENTRANT -Wall   -c -o connect_nonb.o connect_nonb.c

gcc -I../lib -g -O2 -D_REENTRANT -Wall   -c -o connect_timeo.o connect_timeo.c

gcc -I../lib -g -O2 -D_REENTRANT -Wall   -c -o daemon_inetd.o daemon_inetd.c

gcc -I../lib -g -O2 -D_REENTRANT -Wall   -c -o daemon_init.o daemon_init.c

daemon_init.c: In function ‘daemon_init’:

daemon_init.c:34:2: warning: ignoring return value of ‘chdir’, declared with attribute warn_unused_result [-Wunused-result]

  chdir("/");    /* change working directory */

  ^

gcc -I../lib -g -O2 -D_REENTRANT -Wall   -c -o dg_cli.o dg_cli.c

gcc -I../lib -g -O2 -D_REENTRANT -Wall   -c -o dg_echo.o dg_echo.c

gcc -I../lib -g -O2 -D_REENTRANT -Wall   -c -o error.o error.c

error.c: In function ‘err_doit’:

error.c:102:17: warning: format not a string literal and no format arguments [-Wformat-security]

   syslog(level, buf);

                 ^

gcc -I../lib -g -O2 -D_REENTRANT -Wall   -c -o get_ifi_info.o get_ifi_info.c

gcc -I../lib -g -O2 -D_REENTRANT -Wall   -c -o gf_time.o gf_time.c

gcc -I../lib -g -O2 -D_REENTRANT -Wall   -c -o host_serv.o host_serv.c

gcc -I../lib -g -O2 -D_REENTRANT -Wall   -c -o family_to_level.o family_to_level.c

gcc -I../lib -g -O2 -D_REENTRANT -Wall   -c -o mcast_leave.o mcast_leave.c

gcc -I../lib -g -O2 -D_REENTRANT -Wall   -c -o mcast_join.o mcast_join.c

gcc -I../lib -g -O2 -D_REENTRANT -Wall   -c -o mcast_get_if.o mcast_get_if.c

gcc -I../lib -g -O2 -D_REENTRANT -Wall   -c -o mcast_get_loop.o mcast_get_loop.c

gcc -I../lib -g -O2 -D_REENTRANT -Wall   -c -o mcast_get_ttl.o mcast_get_ttl.c

gcc -I../lib -g -O2 -D_REENTRANT -Wall   -c -o mcast_set_if.o mcast_set_if.c

gcc -I../lib -g -O2 -D_REENTRANT -Wall   -c -o mcast_set_loop.o mcast_set_loop.c

gcc -I../lib -g -O2 -D_REENTRANT -Wall   -c -o mcast_set_ttl.o mcast_set_ttl.c

gcc -I../lib -g -O2 -D_REENTRANT -Wall   -c -o my_addrs.o my_addrs.c

gcc -I../lib -g -O2 -D_REENTRANT -Wall   -c -o read_fd.o read_fd.c

read_fd.c: In function ‘read_fd’:

read_fd.c:45:3: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]

   *recvfd = *((int *) CMSG_DATA(cmptr));

   ^

gcc -I../lib -g -O2 -D_REENTRANT -Wall   -c -o readline.o readline.c

gcc -I../lib -g -O2 -D_REENTRANT -Wall   -c -o readn.o readn.c

gcc -I../lib -g -O2 -D_REENTRANT -Wall   -c -o readable_timeo.o readable_timeo.c

gcc -I../lib -g -O2 -D_REENTRANT -Wall   -c -o rtt.o rtt.c

gcc -I../lib -g -O2 -D_REENTRANT -Wall   -c -o signal.o signal.c

gcc -I../lib -g -O2 -D_REENTRANT -Wall   -c -o signal_intr.o signal_intr.c

gcc -I../lib -g -O2 -D_REENTRANT -Wall   -c -o sock_bind_wild.o sock_bind_wild.c

gcc -I../lib -g -O2 -D_REENTRANT -Wall   -c -o sock_cmp_addr.o sock_cmp_addr.c

gcc -I../lib -g -O2 -D_REENTRANT -Wall   -c -o sock_cmp_port.o sock_cmp_port.c

gcc -I../lib -g -O2 -D_REENTRANT -Wall   -c -o sock_ntop.o sock_ntop.c

gcc -I../lib -g -O2 -D_REENTRANT -Wall   -c -o sock_ntop_host.o sock_ntop_host.c

gcc -I../lib -g -O2 -D_REENTRANT -Wall   -c -o sock_get_port.o sock_get_port.c

gcc -I../lib -g -O2 -D_REENTRANT -Wall   -c -o sock_set_addr.o sock_set_addr.c

gcc -I../lib -g -O2 -D_REENTRANT -Wall   -c -o sock_set_port.o sock_set_port.c

gcc -I../lib -g -O2 -D_REENTRANT -Wall   -c -o sock_set_wild.o sock_set_wild.c

gcc -I../lib -g -O2 -D_REENTRANT -Wall   -c -o sockfd_to_family.o sockfd_to_family.c

gcc -I../lib -g -O2 -D_REENTRANT -Wall   -c -o str_cli.o str_cli.c

gcc -I../lib -g -O2 -D_REENTRANT -Wall   -c -o str_echo.o str_echo.c

gcc -I../lib -g -O2 -D_REENTRANT -Wall   -c -o tcp_connect.o tcp_connect.c

gcc -I../lib -g -O2 -D_REENTRANT -Wall   -c -o tcp_listen.o tcp_listen.c

gcc -I../lib -g -O2 -D_REENTRANT -Wall   -c -o tv_sub.o tv_sub.c

gcc -I../lib -g -O2 -D_REENTRANT -Wall   -c -o udp_client.o udp_client.c

gcc -I../lib -g -O2 -D_REENTRANT -Wall   -c -o udp_connect.o udp_connect.c

gcc -I../lib -g -O2 -D_REENTRANT -Wall   -c -o udp_server.o udp_server.c

gcc -I../lib -g -O2 -D_REENTRANT -Wall   -c -o wraplib.o wraplib.c

gcc -I../lib -g -O2 -D_REENTRANT -Wall   -c -o wrapsock.o wrapsock.c

wrapsock.c: In function ‘Inet6_rth_space’:

wrapsock.c:81:8: warning: implicit declaration of function ‘inet6_rth_space’ [-Wimplicit-function-declaration]

  ret = inet6_rth_space(type, segments);

        ^

wrapsock.c: In function ‘Inet6_rth_init’:

wrapsock.c:93:8: warning: implicit declaration of function ‘inet6_rth_init’ [-Wimplicit-function-declaration]

  ret = inet6_rth_init(rthbuf, rthlen, type, segments);

        ^

wrapsock.c:93:6: warning: assignment makes pointer from integer without a cast [-Wint-conversion]

  ret = inet6_rth_init(rthbuf, rthlen, type, segments);

      ^

wrapsock.c: In function ‘Inet6_rth_add’:

wrapsock.c:103:6: warning: implicit declaration of function ‘inet6_rth_add’ [-Wimplicit-function-declaration]

  if (inet6_rth_add(rthbuf, addr) < 0)

      ^

wrapsock.c: In function ‘Inet6_rth_reverse’:

wrapsock.c:110:6: warning: implicit declaration of function ‘inet6_rth_reverse’ [-Wimplicit-function-declaration]

  if (inet6_rth_reverse(in, out) < 0)

      ^

wrapsock.c: In function ‘Inet6_rth_segments’:

wrapsock.c:119:8: warning: implicit declaration of function ‘inet6_rth_segments’ [-Wimplicit-function-declaration]

  ret = inet6_rth_segments(rthbuf);

        ^

wrapsock.c: In function ‘Inet6_rth_getaddr’:

wrapsock.c:131:8: warning: implicit declaration of function ‘inet6_rth_getaddr’ [-Wimplicit-function-declaration]

  ret = inet6_rth_getaddr(rthbuf, idx);

        ^

wrapsock.c:131:6: warning: assignment makes pointer from integer without a cast [-Wint-conversion]

  ret = inet6_rth_getaddr(rthbuf, idx);

      ^

gcc -I../lib -g -O2 -D_REENTRANT -Wall   -c -o wrapstdio.o wrapstdio.c

gcc -I../lib -g -O2 -D_REENTRANT -Wall   -c -o wrappthread.o wrappthread.c

gcc -I../lib -g -O2 -D_REENTRANT -Wall   -c -o wrapunix.o wrapunix.c

gcc -I../lib -g -O2 -D_REENTRANT -Wall   -c -o write_fd.o write_fd.c

write_fd.c: In function ‘write_fd’:

write_fd.c:24:2: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]

  *((int *) CMSG_DATA(cmptr)) = sendfd;

  ^

gcc -I../lib -g -O2 -D_REENTRANT -Wall   -c -o writen.o writen.c

gcc -I../lib -g -O2 -D_REENTRANT -Wall   -c -o writable_timeo.o writable_timeo.c

ar rv ../libunp.a connect_nonb.o connect_timeo.o daemon_inetd.o daemon_init.o dg_cli.o dg_echo.o error.o get_ifi_info.o gf_time.o host_serv.o family_to_level.o mcast_leave.o mcast_join.o mcast_get_if.o mcast_get_loop.o mcast_get_ttl.o mcast_set_if.o mcast_set_loop.o
mcast_set_ttl.o my_addrs.o read_fd.o readline.o readn.o readable_timeo.o rtt.o signal.o signal_intr.o sock_bind_wild.o sock_cmp_addr.o sock_cmp_port.o sock_ntop.o sock_ntop_host.o sock_get_port.o sock_set_addr.o sock_set_port.o sock_set_wild.o sockfd_to_family.o
str_cli.o str_echo.o tcp_connect.o tcp_listen.o tv_sub.o udp_client.o udp_connect.o udp_server.o wraplib.o wrapsock.o wrapstdio.o wrappthread.o wrapunix.o write_fd.o writen.o writable_timeo.o

ar: 正在创建 ../libunp.a

a - connect_nonb.o

a - connect_timeo.o

a - daemon_inetd.o

a - daemon_init.o

a - dg_cli.o

a - dg_echo.o

a - error.o

a - get_ifi_info.o

a - gf_time.o

a - host_serv.o

a - family_to_level.o

a - mcast_leave.o

a - mcast_join.o

a - mcast_get_if.o

a - mcast_get_loop.o

a - mcast_get_ttl.o

a - mcast_set_if.o

a - mcast_set_loop.o

a - mcast_set_ttl.o

a - my_addrs.o

a - read_fd.o

a - readline.o

a - readn.o

a - readable_timeo.o

a - rtt.o

a - signal.o

a - signal_intr.o

a - sock_bind_wild.o

a - sock_cmp_addr.o

a - sock_cmp_port.o

a - sock_ntop.o

a - sock_ntop_host.o

a - sock_get_port.o

a - sock_set_addr.o

a - sock_set_port.o

a - sock_set_wild.o

a - sockfd_to_family.o

a - str_cli.o

a - str_echo.o

a - tcp_connect.o

a - tcp_listen.o

a - tv_sub.o

a - udp_client.o

a - udp_connect.o

a - udp_server.o

a - wraplib.o

a - wrapsock.o

a - wrapstdio.o

a - wrappthread.o

a - wrapunix.o

a - write_fd.o

a - writen.o

a - writable_timeo.o

ranlib ../libunp.a

edward@ubuntu:~/work/unpv13e/lib$ cd ../libfree/

edward@ubuntu:~/work/unpv13e/libfree$ make

gcc -I../lib -g -O2 -D_REENTRANT -Wall   -c -o in_cksum.o in_cksum.c

gcc -I../lib -g -O2 -D_REENTRANT -Wall   -c -o inet_ntop.o inet_ntop.c

inet_ntop.c: In function ‘inet_ntop’:

inet_ntop.c:60:9: error: argument ‘size’ doesn’t match prototype

  size_t size;

         ^

In file included from inet_ntop.c:27:0:

/usr/include/arpa/inet.h:64:20: error: prototype declaration

 extern const char *inet_ntop (int __af, const void *__restrict __cp,

                    ^

<builtin>: recipe for target 'inet_ntop.o' failed

make: *** [inet_ntop.o] Error 1

edward@ubuntu:~/work/unpv13e/libfree$ make

gcc -I../lib -g -O2 -D_REENTRANT -Wall   -c -o inet_ntop.o inet_ntop.c

/usr/include/arpa/inet.h: In function ‘inet_ntop’:

inet_ntop.c:153:23: warning: ‘best.len’ may be used uninitialized in this function [-Wmaybe-uninitialized]

   if (best.base == -1 || cur.len > best.len)

                       ^

inet_ntop.c:124:28: note: ‘best.len’ was declared here

  struct { int base, len; } best, cur;

                            ^

gcc -I../lib -g -O2 -D_REENTRANT -Wall   -c -o inet_pton.o inet_pton.c

ar rv ../libunp.a in_cksum.o inet_ntop.o inet_pton.o

a - in_cksum.o

a - inet_ntop.o

a - inet_pton.o

ranlib ../libunp.a

edward@ubuntu:~/work/unpv13e/libfree$ cd ../intro/

edward@ubuntu:~/work/unpv13e/intro$ make daytimetcpcli

gcc -I../lib -g -O2 -D_REENTRANT -Wall   -c -o daytimetcpcli.o daytimetcpcli.c

gcc -I../lib -g -O2 -D_REENTRANT -Wall -o daytimetcpcli daytimetcpcli.o ../libunp.a -lpthread

edward@ubuntu:~/work/unpv13e/intro$ ./daytimetcpcli 127.0.0.1

connect error: Connection refused

edward@ubuntu:~/work/unpv13e/intro$ sudo /etc/init.d/xinetd restart

[sudo] edward 的密码:

[ ok ] Restarting xinetd (via systemctl): xinetd.service.

edward@ubuntu:~/work/unpv13e/intro$ ./daytimetcpcli 127.0.0.1

29 JUN 2016 14:14:55 CST
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  ubuntu 16.04 UNIX