I have started reading the book Unix Network Programming, Volume 1: The Sockets Networking API. I downloaded all the source code and the readme says I must make the files.
Code:
zuro@zuro:~/book/unpv12e$ cd lib
zuro@zuro:~/book/unpv12e/lib$ make
gcc -g -O2 -D_REENTRANT -Wall -c -o connect_nonb.o
connect_nonb.c
In file included from connect_nonb.c:1:0:
unp.h:114:8: error: redefinition of ‘struct in_pktinfo'
struct in_pktinfo {
^
In file included from /usr/include/netinet/in.h:37:0,
from unp.h:17,
from connect_nonb.c:1:
/usr/include/x86_64-linux-gnu/bits/in.h:127:8: note: originally defined here
struct in_pktinfo
^
make: *** [connect_nonb.o] Error 1
zuro@zuro:~/book/unpv12e/lib$
Its like that for all the files. I'm running Kubuntu Linux, not sure if this problem is because of that or not.
I got the source code from ftp . gnu . org / gnu / autoconf
That is the source for autoconf, not whatever's in your book.
We can't possibly help you without seeing the code.
[edit] You can get code for the third edition of your book here. All the examples in 'intro' except byteorder.c build cleanly on my Linux system, and 'byteorder' can be fixed by changing this line
Code:
printf("sizeof(short) = %d\n", sizeof(short));
into this line
Code:
printf("sizeof(short) = %ld\n", sizeof(short));
Building 'libfree', etc, etc, is not likely to work since Linux already has all these functions, causing multiple definition / incompatible declaration / etc kind of errors.
Last edited by Corona688; 08-01-2014 at 05:36 PM..
Opps wrong source code. The file with the source is:
http:// www. unpbook .com/src. html
---------- Post updated at 03:46 PM ---------- Previous update was at 03:31 PM ----------
How do you build them?
I tried to just go into the dir and type make, for example with ping. The problem is when I typed make I got errors.
Code:
zuro@zuro:~/book/unpv12e/ping$ make
gcc -g -O2 -D_REENTRANT -Wall -c -o main.o main.c
In file included from ping.h:1:0,
from main.c:1:
unp.h:114:8: error: redefinition of ‘struct in_pktinfo’
struct in_pktinfo {
^
In file included from /usr/include/netinet/in.h:37:0,
from unp.h:17,
from ping.h:1,
from main.c:1:
/usr/include/x86_64-linux-gnu/bits/in.h:127:8: note: originally defined here
struct in_pktinfo
^
make: *** [main.o] Error 1
And with gcc same thing
Code:
zuro@zuro:~/book/unpv12e/intro$ gcc daytimetcpcli1.c -o daytime
In file included from daytimetcpcli1.c:1:0:
unp.h:114:8: error: redefinition of ‘struct in_pktinfo’
struct in_pktinfo {
^
In file included from /usr/include/netinet/in.h:37:0,
from unp.h:17,
from daytimetcpcli1.c:1:
/usr/include/x86_64-linux-gnu/bits/in.h:127:8: note: originally defined here
struct in_pktinfo
^
Last edited by Don Cragun; 08-01-2014 at 05:53 PM..
Reason: Change ICODE tags to CODE tags for multi-line data.
I don't get that error. Did you run ./configure before trying to build any of this?
I get a different error... The code appears extremely broken anywhere except the system they wrote it on, not to mention quite extremely old. They even admit they didn't bother making it portable on the download page.
UNIX is not an operating system. I think they used some sort of BSD, but odds are good BSD has also changed a lot in the 10-to-20 years since these things were updated.
If you wanted to learn modern networking, you'd do better to find modern examples.
Is it possible to study second volume of Unix Network Programming - Interprocess communication (by Stevense) with Advanced Programming in Unix Environment by the same author?
I've got the idea that the topics/subjects in second volume has more to do with non network programming hence it seems... (0 Replies)
I have started reading the book Unix Network Programming, Volume 1: The Sockets Networking API. I downloaded all the source code and performed all the steps present in README file.Now when i compile my first program it give the following error.
sainandan@nandan:~/unpv13e/intro$ ./daytimetcpcli... (1 Reply)
Hi,
I have to start doing network programming in C/Unix but I have windows installed.
Could someone please guide me how to set up the environment best suited for the networking programming?
Regards
Vinayak (1 Reply)
I have written a client-server program which does some data from a file in server to the client. In this I don't want the client to wait indefinitely if server is not running. For this I am using SELECT system call, in this system call we can specify timings as an argument, which tells the client... (2 Replies)
Hi!
I am working on fedora..
trying to execute BSD4.4 client-server program which includes "unp.h" header file...
While executing make command, I got error like,
" expected " , " , " ; ",or ")" in connect_nonb file...ERROR 1 "
I tried to change mode of makefile but I can't get... (4 Replies)
Greetings everyone,
I've been using OpenWRT for some time primarly for research in the University. I've also started with some basic network programming (sending UDP packets for instance). But since most of the available tutorials on unix network programming are more related to ethernet... (4 Replies)
I want to develop a hybrid IM application which will consist of a chat and an offline messaging (BBS) part.
Server must support
Multiple connection (concurrent)
Arguments should not be hard coded (code will be checked at different machines)
No input at the command line
Must run in the... (3 Replies)
Good day everyone,
Please help if you are interested in.
I need to do a chat client-server program.
Does anyone know where I can get references or sample programs?
Thank you very much for your time
Eric (2 Replies)
I am going to purchase Unix Network Programming by Stevens. The only question I have is which edition to buy. The older (early 90's) edition, or the newer (late 90's) edition. I know conventional thinking would point to the latest ( and greatest?), but I wanted to get some feedback from the forum.... (3 Replies)