ciao a tutti, ho bisogno di una mano. vorrei passare una struttura fatta così:
codice:
typedef struct {
char *comando;
int id;
char *par1;
char *par2;
char *par3;
int val;
}Comando;
attraverso una named pipe
è possibile farlo?
finora non ci sono riuscito, ecco il mio codice di prova:
MITTENTE:
codice:
int main(){
int fd;
if(mkfifo("fifo_in", 0666)==-1)
printf("errore in\n");
fd=open("fifo_in", O_WRONLY);
Comando *p=malloc(sizeof(Comando));
p->id=2;
p->par1=malloc(sizeof(char)*10);
strcpy(p->par1, "ciao\0");
printf("%d\n", write(fd, &p, sizeof(p)));
return 0;
}
DESTINATARIO:
codice:
int main (){
int fd=open("fifo_in", O_RDONLY);
Comando *p=malloc(sizeof(Comando));
printf("%d\n", read(fd, &p, sizeof(p)));
printf("%d\n", p->id);
printf("%s\n", p->par1);
return 0;
}
grazie in anticipo