Archived
3
0
This repository has been archived on 2024-06-18. You can view files and clone it, but cannot push or open issues or pull requests.
libipc-old/lib/process.c
2016-06-10 01:21:04 +02:00

47 lines
1.1 KiB
C

#include "process.h"
struct process * srv_process_copy (const struct process *p)
{
if (p == NULL)
return NULL;
struct process * copy = malloc (sizeof(struct process));
memcpy (copy, p, sizeof (struct process));
return copy;
}
int srv_process_eq (const struct process *p1, const struct process *p2)
{
return (p1->pid == p2->pid && p1->version == p2->version
&& p1->index == p2->index);
}
void srv_process_gen (struct process *p
, pid_t pid, unsigned int index, unsigned int version)
{
p->pid = pid;
p->version = version;
p->index = index;
bzero (p->path_in, PATH_MAX);
bzero (p->path_out, PATH_MAX);
snprintf(p->path_in , PATH_MAX, "%s/%d-%d-in" , TMPDIR, pid, index);
snprintf(p->path_out, PATH_MAX, "%s/%d-%d-out", TMPDIR, pid, index);
p->in = NULL;
p->out = NULL;
}
void srv_process_free (struct process * p)
{
if (! p)
return;
free (p);
}
void srv_process_print (struct process *p)
{
if (p != NULL)
printf ("process %d : index %d\n", p->pid, p->index);
}