+#ifdef macintosh
+typedef struct {
+ int (*init)(void);
+ SOCKET (*open)(Session *, char const *, int);
+ int (*recv)(SOCKET, void *, int, int);
+ int (*send)(SOCKET, void *, int, int);
+ void (*poll)(void);
+ void (*close)(SOCKET);
+ void (*destroy)(SOCKET);
+ void (*shutdown)(void);
+} Network_Stack;
+
+GLOBAL Network_Stack *net_stack;
+
+#define net_open(s, h, p) ((*net_stack->open)((s), (h), (p)))
+#define net_recv(s, b, l, f) ((*net_stack->recv)((s), (b), (l), (f)))
+#define net_send(s, b, l, f) ((*net_stack->send)((s), (b), (l), (f)))
+#define net_poll() ((*net_stack->poll)())
+#define net_close(s) ((*net_stack->close)(s))
+#define net_destroy(s) ((*net_stack->destroy)(s))
+#define net_shutdown() ((*net_stack->shutdown)())
+#endif
+