Startpunkten
This commit is contained in:
45
body.c
Normal file
45
body.c
Normal file
@@ -0,0 +1,45 @@
|
||||
#include "student.h"
|
||||
|
||||
#define PATH ".phys_socket"
|
||||
#define LPATH ".link_socket"
|
||||
|
||||
int PSOCK_FD, LSOCK_FD;
|
||||
|
||||
void do_something(void)
|
||||
{
|
||||
PollSOcket(LSOCK_FD, PSOCK_FD, NULL);
|
||||
}
|
||||
|
||||
void main(int argc, char *argv[])
|
||||
{
|
||||
int tmp_fd1;
|
||||
|
||||
if((LSOCK_FD = CreateUnixClientSocket(LPATH)) < 0)
|
||||
{
|
||||
fprintf(stderr, "Can't create unix client socket\n");
|
||||
exit(1);
|
||||
}
|
||||
|
||||
if((tmp_fd1 = CreateUnixServerSocket(PATH) < 0)
|
||||
{
|
||||
fprintf(stderr, "Can't create unix server socket\n");
|
||||
exit(1);
|
||||
}
|
||||
|
||||
switch(fork())
|
||||
{
|
||||
case -1: fprintf(stderr, "Fork failed\n");
|
||||
case 0: close(PSOCK_FD);
|
||||
close(LSOCK_FD);
|
||||
execv("./physical_layer", argv);
|
||||
exit(1);
|
||||
default: if((PSOCK_FD = AcceptConnection(tmp_fd1)) < 0
|
||||
{
|
||||
fprintf(stderr, "Can't accept unix client signal socket\n");
|
||||
exit(1);
|
||||
}
|
||||
|
||||
do_something();
|
||||
exit(1);
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user