[ Next Article |
Previous Article |
Book Contents |
Library Home |
Legal |
Search ]
Communications Programming Concepts
Initiating UNIX Stream Connections Example Program
/*
* This program connects to the socket named in the command line
* and sends a one line message to that socket. The form of the
* command line is ustreamwrite pathname.
*/
#include <sys/types.h>
#include <sys/socket.h>
#include <sys/un.h>
#include <stdio.h>
#define DATA "Half a league, half a league..."
main(argc, argv)
int argc;
char *argv[];
{
int sock;
struct sockaddr_un server;
char buf[1024];
/* Create socket. */
sock = socket(AF_UNIX, SOCK_STREAM, 0);
if (sock < 0) {
perror("opening stream socket");
exit(1);
}
/* Connect socket using name specified by command line. */
server.sun_family = AF_UNIX;
strcpy(server.sun_path, argv[1]);
server.sun_len = strlen(server.sun_path);
if (connect(sock, (struct sockaddr *)&server,
sizeof(struct sockaddr_un)) < 0) {
close(sock);
perror("connecting stream socket");
exit(1);
}
if (write(sock, DATA, sizeof(DATA)) < 0)
perror("writing on stream socket");
}
[ Next Article |
Previous Article |
Book Contents |
Library Home |
Legal |
Search ]