50 lines
1.2 KiB
C
50 lines
1.2 KiB
C
/*
|
|
sr.h
|
|
|
|
Copyright 1995 Philip Homburg
|
|
*/
|
|
|
|
#ifndef SR_H
|
|
#define SR_H
|
|
|
|
#define MAX_IOCTL_S 512
|
|
|
|
#define SR_CANCEL_IOCTL 1
|
|
#define SR_CANCEL_READ 2
|
|
#define SR_CANCEL_WRITE 3
|
|
|
|
#define SR_SELECT_READ 0x01
|
|
#define SR_SELECT_WRITE 0x02
|
|
#define SR_SELECT_EXCEPTION 0x04
|
|
#define SR_SELECT_POLL 0x10
|
|
|
|
/* Forward struct declarations */
|
|
|
|
struct acc;
|
|
|
|
/* prototypes */
|
|
|
|
typedef int (*sr_open_t) ARGS(( int port, int srfd,
|
|
get_userdata_t get_userdata, put_userdata_t put_userdata,
|
|
put_pkt_t put_pkt, select_res_t select_res ));
|
|
typedef void (*sr_close_t) ARGS(( int fd ));
|
|
typedef int (*sr_read_t) ARGS(( int fd, size_t count ));
|
|
typedef int (*sr_write_t) ARGS(( int fd, size_t count ));
|
|
typedef int (*sr_ioctl_t) ARGS(( int fd, ioreq_t req ));
|
|
typedef int (*sr_cancel_t) ARGS(( int fd, int which_operation ));
|
|
typedef int (*sr_select_t) ARGS(( int fd, unsigned operations ));
|
|
|
|
void sr_init ARGS(( void ));
|
|
void sr_add_minor ARGS(( int minor, int port, sr_open_t openf,
|
|
sr_close_t closef, sr_read_t sr_read, sr_write_t sr_write,
|
|
sr_ioctl_t ioctlf, sr_cancel_t cancelf, sr_select_t selectf ));
|
|
|
|
#endif /* SR_H */
|
|
|
|
/* Track TCP connections back into sr (for lsof, identd, etc.) */
|
|
EXTERN sr_cancel_t tcp_cancel_f;
|
|
|
|
/*
|
|
* $PchId: sr.h,v 1.9 2005/06/28 14:19:51 philip Exp $
|
|
*/
|