blob: 5bb4593baa9e6e87d99c44aada82bab0b8864ca5 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
|
#ifndef MINIX_SOCKEVENT_PROC_H
#define MINIX_SOCKEVENT_PROC_H
struct sockevent_proc {
struct sockevent_proc *spr_next; /* next on sock or free list */
unsigned char spr_event; /* event for call (SEV_) */
unsigned char spr_timer; /* suspended call has timer? */
struct sockdriver_call spr_call; /* call structure */
endpoint_t spr_endpt; /* user endpoint */
struct sockdriver_packed_data spr_data; /* regular data, packed */
size_t spr_datalen; /* length of regular data */
size_t spr_dataoff; /* offset into regular data */
struct sockdriver_packed_data spr_ctl; /* control data, packed */
socklen_t spr_ctllen; /* length of control data */
socklen_t spr_ctloff; /* offset into control data */
int spr_flags; /* send/recv flags (MSG_) */
int spr_rflags; /* recv result flags (MSG_) */
clock_t spr_time; /* timeout time for call */
};
void sockevent_proc_init(void);
struct sockevent_proc *sockevent_proc_alloc(void);
void sockevent_proc_free(struct sockevent_proc *);
#endif /* !MINIX_SOCKEVENT_PROC_H */
|