Add an indirection layer between mtcpnet.c and the rest of PuTTY so that
[u/mdw/putty] / mac / macnet.c
CommitLineData
deed9e25 1#include "putty.h"
2#include "network.h"
3#include "mac.h"
4
5/*
6 * Network functions exported to the world. These choose whether to call
7 * MacTCP or OpenTransport and behave accordingly.
8 */
9SockAddr sk_namelookup(char *host, char **canonicalname)
10{
11
12 if (mac_gestalts.mtcpvers != 0)
13 return mactcp_namelookup(host, canonicalname);
14 else
15 return NULL;
16}
17
18SockAddr sk_nonamelookup(char *host)
19{
20
21 if (mac_gestalts.mtcpvers != 0)
22 return mactcp_nonamelookup(host);
23 else
24 return NULL;
25}
26
27void sk_getaddr(SockAddr addr, char *buf, int buflen)
28{
29
30 if (mac_gestalts.mtcpvers != 0)
31 mactcp_getaddr(addr, buf, buflen);
32 else
33 *buf = '\0';
34}
35
36int sk_hostname_is_local(char *name)
37{
38
39 if (mac_gestalts.mtcpvers != 0)
40 return mactcp_hostname_is_local(name);
41 else
42 return 0;
43}
44
45int sk_address_is_local(SockAddr addr)
46{
47
48 if (mac_gestalts.mtcpvers != 0)
49 return mactcp_address_is_local(addr);
50 else
51 return 0;
52}
53
54int sk_addrtype(SockAddr addr)
55{
56
57 if (mac_gestalts.mtcpvers != 0)
58 return mactcp_addrtype(addr);
59 else
60 return 0;
61}
62
63void sk_addrcopy(SockAddr addr, char *buf)
64{
65
66 if (mac_gestalts.mtcpvers != 0)
67 mactcp_addrcopy(addr, buf);
68}
69
70void sk_addr_free(SockAddr addr)
71{
72
73 if (mac_gestalts.mtcpvers != 0)
74 mactcp_addr_free(addr);
75}
76
77Socket sk_register(void *sock, Plug plug)
78{
79
80 if (mac_gestalts.mtcpvers != 0)
81 return mactcp_register(sock, plug);
82 else
83 return NULL;
84}
85
86Socket sk_new(SockAddr addr, int port, int privport, int oobinline,
87 int nodelay, Plug plug)
88{
89
90 if (mac_gestalts.mtcpvers != 0)
91 return mactcp_new(addr, port, privport, oobinline, nodelay, plug);
92 else
93 return NULL;
94}
95
96Socket sk_newlistener(char *srcaddr, int port, Plug plug, int local_host_only)
97{
98
99 if (mac_gestalts.mtcpvers != 0)
100 return mactcp_newlistener(srcaddr, port, plug, local_host_only);
101 else
102 return NULL;
103}
104
105char *sk_addr_error(SockAddr addr)
106{
107
108 if (mac_gestalts.mtcpvers != 0)
109 return mactcp_addr_error(addr);
110 else
111 return "No TCP/IP stack installed";
112}
113
114/*
115 * Local Variables:
116 * c-file-style: "simon"
117 * End:
118 */
119