risolto sqdmfjsqlmkjfmslqjfjsqlfjsqlfjdl
This commit is contained in:
parent
5c06be55fb
commit
b9585833f6
|
@ -56,6 +56,8 @@ void sigHandlerClient(int sig) {
|
|||
//TODO: mettere main ma non l'ho fatto per makefile
|
||||
int main(int argc, char *argv[]){
|
||||
|
||||
printf("Il mio pid per killarmi: %d\n", getpid()); //TMP
|
||||
|
||||
checkClientinput(argc, argv);
|
||||
|
||||
// SIGNAL
|
||||
|
|
|
@ -8,6 +8,7 @@
|
|||
#include <sys/msg.h>
|
||||
#include <sys/sem.h>
|
||||
#include <string.h>
|
||||
#include <unistd.h>
|
||||
|
||||
#include <server.h>
|
||||
#include <structures.h>
|
||||
|
@ -20,6 +21,8 @@
|
|||
#include <custom_sig.h>
|
||||
|
||||
int main(int argc, char *argv[]){
|
||||
printf("Il mio pid per killarmi: %d\n", getpid()); //TMP
|
||||
|
||||
// CHECK_INPUT
|
||||
input_server_t input = check_input(argc, argv);
|
||||
|
||||
|
|
|
@ -1,11 +1,16 @@
|
|||
#include <sys/msg.h>
|
||||
#include <errno.h>
|
||||
|
||||
#include <custom_msgq.h>
|
||||
#include <errExit.h>
|
||||
|
||||
void msgRcv(void *msgp, size_t size, long mtype) {
|
||||
if (msgrcv(_MSGQID, msgp, size, mtype, 0) == -1) {
|
||||
perror("test");
|
||||
int res;
|
||||
do {
|
||||
res = msgrcv(_MSGQID, msgp, size, mtype, 0);
|
||||
} while (errno == EINTR);
|
||||
|
||||
if (res == -1) {
|
||||
errExitMsg("msgrcv");
|
||||
}
|
||||
}
|
||||
|
@ -27,7 +32,12 @@ void rcvGame_end(game_end_t *game) {
|
|||
|
||||
|
||||
void msgSnd(void *msgp, size_t size) {
|
||||
if (msgsnd(_MSGQID, msgp, size, 0) == -1) {
|
||||
int res;
|
||||
do {
|
||||
res = msgsnd(_MSGQID, msgp, size, 0);
|
||||
} while (errno == EINTR);
|
||||
|
||||
if (res == -1) {
|
||||
errExitMsg("msgsnd");
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,5 +1,6 @@
|
|||
#include <sys/sem.h>
|
||||
#include <sys/stat.h>
|
||||
#include <errno.h>
|
||||
|
||||
#include <custom_sem.h>
|
||||
#include <structures.h>
|
||||
|
@ -8,8 +9,13 @@
|
|||
void semOp(int semid, short sem_num, short sem_op) {
|
||||
struct sembuf sop = {.sem_num = sem_num, .sem_op = sem_op, .sem_flg = 0};
|
||||
|
||||
if (semop(semid, &sop, 1) == -1) {
|
||||
errExit("semop", "semOp");
|
||||
int res;
|
||||
do {
|
||||
res = semop(semid, &sop, 1);
|
||||
} while ((errno == EINTR));
|
||||
|
||||
if (res == -1) {
|
||||
errExitMsg("semOp");
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -98,6 +98,7 @@ void sigHandlerServer(int sig) {
|
|||
void setServerSignalHandler() {
|
||||
sigset_t mySet;
|
||||
sigfillset(&mySet);
|
||||
|
||||
sigdelset(&mySet, SIGINT);
|
||||
sigdelset(&mySet, SIGTERM);
|
||||
sigdelset(&mySet, SIGHUP);
|
||||
|
|
Loading…
Reference in New Issue