/* at_pcb.h */
#include <sys/appleapiopts.h>
-#ifdef __APPLE_API_PRIVATE
+#ifdef __APPLE_API_OBSOLETE
+#ifdef KERNEL_PRIVATE
/*
* Common structure pcb for internet protocol implementation.
* Here are stored pointers to local and foreign host table
* up (to a socket structure) and down (to a protocol-specific)
* control block.
*/
+struct atpcb;
+typedef struct atpcb gref_t;
struct atpcb {
struct atpcb *atpcb_next, /* pointers to other pcb's */
*atpcb_prev,
atlock_t lock;
atevent_t event;
atevent_t iocevent;
- int (*writeable)();
- int (*readable)();
+ int (*writeable)(gref_t *gref);
+ int (*readable)(gref_t *gref);
struct selinfo si; /* BSD 4.4 selinfo structure for
selrecord/selwakeup */
};
#define sotoatpcb(so)((struct atpcb *)(so)->so_pcb)
-#endif /* __APPLE_API_PRIVATE */
/* ddp_flags */
#define DDPFLG_CHKSUM 0x01 /* DDP checksums to be used on this connection */
#define DDPFLG_HDRINCL 0x08 /* user supplies entire DDP header */
#define DDPFLG_STRIPHDR 0x200 /* drop DDP header on receive (raw) */
-#ifdef __APPLE_API_PRIVATE
-#ifdef KERNEL
-typedef struct atpcb gref_t;
+int at_pcballoc(struct socket *, struct atpcb *);
+int at_pcbdetach(struct atpcb *);
+int at_pcbbind(struct atpcb *, struct sockaddr *);
+
+int atalk_getref(struct fileproc *, int , gref_t ** , struct proc *, int);
+int atalk_getref_locked(struct fileproc *, int , gref_t ** , struct proc *, int);
+
-int at_pcballoc __P((struct socket *, struct atpcb *));
-int at_pcbdetach __P((struct atpcb *));
-int at_pcbbind __P((struct atpcb *, struct sockaddr *));
-#endif /* KERNEL */
-#endif /* __APPLE_API_PRIVATE */
+#endif /* KERNEL_PRIVATE */
+#endif /* __APPLE_API_OBSOLETE */