1/*
2 * Copyright (c) 2012-2014 Apple Inc. All rights reserved.
3 *
4 * @APPLE_OSREFERENCE_LICENSE_HEADER_START@
5 *
6 * This file contains Original Code and/or Modifications of Original Code
7 * as defined in and that are subject to the Apple Public Source License
8 * Version 2.0 (the 'License'). You may not use this file except in
9 * compliance with the License. The rights granted to you under the License
10 * may not be used to create, or enable the creation or redistribution of,
11 * unlawful or unlicensed copies of an Apple operating system, or to
12 * circumvent, violate, or enable the circumvention or violation of, any
13 * terms of an Apple operating system software license agreement.
14 *
15 * Please obtain a copy of the License at
16 * http://www.opensource.apple.com/apsl/ and read it before using this file.
17 *
18 * The Original Code and all software distributed under the License are
19 * distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
20 * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
21 * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
22 * FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
23 * Please see the License for the specific language governing rights and
24 * limitations under the License.
25 *
26 * @APPLE_OSREFERENCE_LICENSE_HEADER_END@
27 */
28
29#include <kern/debug.h>
30
31#if !NETWORKING
32
33#define STUB(name)							\
34	int name(void);							\
35	int name(void) 							\
36	{								\
37		panic("stub called in a config with no networking");	\
38		return 0; 						\
39	}
40
41STUB(bpf_attach);
42STUB(bpf_tap_in);
43STUB(bpf_tap_out);
44STUB(bpfattach);
45STUB(ctl_deregister);
46STUB(ctl_enqueuedata);
47STUB(ctl_enqueuembuf);
48STUB(ctl_enqueuembuf_list);
49STUB(ctl_getenqueuespace);
50STUB(ctl_register);
51STUB(ether_add_proto);
52STUB(ether_check_multi);
53STUB(ether_del_proto);
54STUB(ether_demux);
55STUB(ether_frameout);
56STUB(ether_ioctl);
57STUB(fifo_advlock);
58STUB(fifo_close);
59STUB(fifo_inactive);
60STUB(fifo_ioctl);
61STUB(fifo_lookup);
62STUB(fifo_open);
63STUB(fifo_pathconf);
64STUB(fifo_read);
65STUB(fifo_select);
66STUB(fifo_write);
67STUB(ifaddr_address);
68STUB(ifaddr_address_family);
69STUB(ifaddr_dstaddress);
70STUB(ifaddr_findbestforaddr);
71STUB(ifaddr_ifnet);
72STUB(ifaddr_netmask);
73STUB(ifaddr_reference);
74STUB(ifaddr_release);
75STUB(ifaddr_withaddr);
76STUB(ifaddr_withdstaddr);
77STUB(ifaddr_withnet);
78STUB(ifaddr_withroute);
79STUB(iflt_attach);
80STUB(iflt_detach);
81STUB(ifmaddr_address);
82STUB(ifmaddr_ifnet);
83STUB(ifmaddr_lladdress);
84STUB(ifmaddr_reference);
85STUB(ifmaddr_release);
86STUB(ifnet_add_multicast);
87STUB(ifnet_addrlen);
88STUB(ifnet_allocate);
89STUB(ifnet_attach);
90STUB(ifnet_attach_protocol);
91STUB(ifnet_baudrate);
92STUB(ifnet_capabilities_enabled);
93STUB(ifnet_capabilities_supported);
94STUB(ifnet_detach);
95STUB(ifnet_detach_protocol);
96STUB(ifnet_eflags);
97STUB(ifnet_event);
98STUB(ifnet_family);
99STUB(ifnet_subfamily);
100STUB(ifnet_find_by_name);
101STUB(ifnet_flags);
102STUB(ifnet_free_address_list);
103STUB(ifnet_free_multicast_list);
104STUB(ifnet_get_address_list);
105STUB(ifnet_get_address_list_family);
106STUB(ifnet_get_link_mib_data);
107STUB(ifnet_get_link_mib_data_length);
108STUB(ifnet_get_multicast_list);
109STUB(ifnet_get_service_class_sndq_len);
110STUB(ifnet_get_tso_mtu);
111STUB(ifnet_get_wake_flags);
112STUB(ifnet_hdrlen);
113STUB(ifnet_index);
114STUB(ifnet_input);
115STUB(ifnet_interface_family_find);
116STUB(ifnet_ioctl);
117STUB(ifnet_lastchange);
118STUB(ifnet_list_free);
119STUB(ifnet_list_get);
120STUB(ifnet_lladdr);
121STUB(ifnet_lladdr_copy_bytes);
122STUB(ifnet_llbroadcast_copy_bytes);
123STUB(ifnet_metric);
124STUB(ifnet_mtu);
125STUB(ifnet_name);
126STUB(ifnet_offload);
127STUB(ifnet_output);
128STUB(ifnet_output_raw);
129STUB(ifnet_reference);
130STUB(ifnet_release);
131STUB(ifnet_remove_multicast);
132STUB(ifnet_resolve_multicast);
133STUB(ifnet_set_addrlen);
134STUB(ifnet_set_baudrate);
135STUB(ifnet_set_capabilities_enabled);
136STUB(ifnet_set_capabilities_supported);
137STUB(ifnet_set_delegate);
138STUB(ifnet_set_eflags);
139STUB(ifnet_set_flags);
140STUB(ifnet_set_hdrlen);
141STUB(ifnet_set_link_mib_data);
142STUB(ifnet_set_lladdr);
143STUB(ifnet_set_metric);
144STUB(ifnet_set_mtu);
145STUB(ifnet_set_offload);
146STUB(ifnet_set_promiscuous);
147STUB(ifnet_set_stat);
148STUB(ifnet_set_tso_mtu);
149STUB(ifnet_set_wake_flags);
150STUB(ifnet_softc);
151STUB(ifnet_stat);
152STUB(ifnet_stat_increment);
153STUB(ifnet_stat_increment_in);
154STUB(ifnet_stat_increment_out);
155STUB(ifnet_touch_lastchange);
156STUB(ifnet_type);
157STUB(ifnet_unit);
158STUB(in_cksum);
159STUB(inet_arp_handle_input);
160STUB(inet_arp_init_ifaddr);
161STUB(inet_arp_lookup);
162STUB(ipf_addv4);
163STUB(ipf_addv6);
164STUB(ipf_inject_input);
165STUB(ipf_inject_output);
166STUB(ipf_remove);
167STUB(kev_msg_post);
168STUB(kev_vendor_code_find);
169STUB(mbuf_adj);
170STUB(mbuf_adjustlen);
171STUB(mbuf_align_32);
172STUB(mbuf_alloccluster);
173STUB(mbuf_allocpacket);
174STUB(mbuf_allocpacket_list);
175STUB(mbuf_attachcluster);
176STUB(mbuf_clear_csum_performed);
177STUB(mbuf_clear_csum_requested);
178STUB(mbuf_clear_vlan_tag);
179STUB(mbuf_concatenate);
180STUB(mbuf_copy_pkthdr);
181STUB(mbuf_copyback);
182STUB(mbuf_copydata);
183STUB(mbuf_copym);
184STUB(mbuf_data);
185STUB(mbuf_data_to_physical);
186STUB(mbuf_datastart);
187STUB(mbuf_dup);
188STUB(mbuf_flags);
189STUB(mbuf_free);
190STUB(mbuf_freecluster);
191STUB(mbuf_freem);
192STUB(mbuf_freem_list);
193STUB(mbuf_get);
194STUB(mbuf_get_csum_performed);
195STUB(mbuf_get_csum_requested);
196STUB(mbuf_get_mhlen);
197STUB(mbuf_get_minclsize);
198STUB(mbuf_get_mlen);
199STUB(mbuf_get_traffic_class);
200STUB(mbuf_get_tso_requested);
201STUB(mbuf_get_vlan_tag);
202STUB(mbuf_getcluster);
203STUB(mbuf_gethdr);
204STUB(mbuf_getpacket);
205STUB(mbuf_inbound_modified);
206STUB(mbuf_inet_cksum);
207STUB(mbuf_is_traffic_class_privileged);
208STUB(mbuf_leadingspace);
209STUB(mbuf_len);
210STUB(mbuf_maxlen);
211STUB(mbuf_mclget);
212STUB(mbuf_mclhasreference);
213STUB(mbuf_next);
214STUB(mbuf_nextpkt);
215STUB(mbuf_outbound_finalize);
216STUB(mbuf_pkthdr_adjustlen);
217STUB(mbuf_pkthdr_header);
218STUB(mbuf_pkthdr_len);
219STUB(mbuf_pkthdr_rcvif);
220STUB(mbuf_pkthdr_setheader);
221STUB(mbuf_pkthdr_setlen);
222STUB(mbuf_pkthdr_setrcvif);
223STUB(mbuf_prepend);
224STUB(mbuf_pulldown);
225STUB(mbuf_pullup);
226STUB(mbuf_set_csum_performed);
227STUB(mbuf_set_csum_requested);
228STUB(mbuf_set_traffic_class);
229STUB(mbuf_set_vlan_tag);
230STUB(mbuf_setdata);
231STUB(mbuf_setflags);
232STUB(mbuf_setflags_mask);
233STUB(mbuf_setlen);
234STUB(mbuf_setnext);
235STUB(mbuf_setnextpkt);
236STUB(mbuf_settype);
237STUB(mbuf_split);
238STUB(mbuf_stats);
239STUB(mbuf_tag_allocate);
240STUB(mbuf_tag_find);
241STUB(mbuf_tag_free);
242STUB(mbuf_tag_id_find);
243STUB(mbuf_add_drvaux);
244STUB(mbuf_find_drvaux);
245STUB(mbuf_del_drvaux);
246STUB(mbuf_trailingspace);
247STUB(mbuf_type);
248STUB(net_init_add);
249STUB(proto_inject);
250STUB(proto_input);
251STUB(proto_register_plumber);
252STUB(proto_unregister_plumber);
253STUB(sflt_attach);
254STUB(sflt_detach);
255STUB(sflt_register);
256STUB(sflt_unregister);
257STUB(sock_accept);
258STUB(sock_bind);
259STUB(sock_close);
260STUB(sock_connect);
261STUB(sock_connectwait);
262STUB(sock_getpeername);
263STUB(sock_getsockname);
264STUB(sock_getsockopt);
265STUB(sock_gettype);
266STUB(sock_inject_data_in);
267STUB(sock_inject_data_out);
268STUB(sock_ioctl);
269STUB(sock_isconnected);
270STUB(sock_isnonblocking);
271STUB(sock_listen);
272STUB(sock_nointerrupt);
273STUB(sock_receive);
274STUB(sock_receivembuf);
275STUB(sock_send);
276STUB(sock_sendmbuf);
277STUB(sock_setpriv);
278STUB(sock_setsockopt);
279STUB(sock_shutdown);
280STUB(sock_socket);
281STUB(sockopt_copyin);
282STUB(sockopt_copyout);
283STUB(sockopt_direction);
284STUB(sockopt_level);
285STUB(sockopt_name);
286STUB(sockopt_valsize);
287STUB(kev_post_msg);
288STUB(ctl_id_by_name);
289STUB(ctl_name_by_id);
290STUB(ifnet_allocate_extended);
291STUB(ifnet_bandwidths);
292STUB(ifnet_clone_attach);
293STUB(ifnet_clone_detach);
294STUB(ifnet_dequeue);
295STUB(ifnet_dequeue_multi);
296STUB(ifnet_dequeue_service_class);
297STUB(ifnet_dequeue_service_class_multi);
298STUB(ifnet_enqueue);
299STUB(ifnet_get_delegate);
300STUB(ifnet_get_inuse_address_list);
301STUB(ifnet_get_local_ports);
302STUB(ifnet_get_local_ports_extended);
303STUB(ifnet_get_rcvq_maxlen);
304STUB(ifnet_get_sndq_len);
305STUB(ifnet_get_sndq_maxlen);
306STUB(ifnet_idle_flags);
307STUB(ifnet_inet6_defrouter_llreachinfo);
308STUB(ifnet_inet_defrouter_llreachinfo);
309STUB(ifnet_input_extended);
310STUB(ifnet_latencies);
311STUB(ifnet_link_quality);
312STUB(ifnet_notice_master_elected);
313STUB(ifnet_notice_node_absence);
314STUB(ifnet_notice_node_presence);
315STUB(ifnet_poll_params);
316STUB(ifnet_purge);
317STUB(ifnet_report_issues);
318STUB(ifnet_set_bandwidths);
319STUB(ifnet_set_idle_flags);
320STUB(ifnet_set_latencies);
321STUB(ifnet_set_link_quality);
322STUB(ifnet_set_output_sched_model);
323STUB(ifnet_set_poll_params);
324STUB(ifnet_set_rcvq_maxlen);
325STUB(ifnet_set_sndq_maxlen);
326STUB(ifnet_start);
327STUB(ifnet_transmit_burst_end);
328STUB(ifnet_transmit_burst_start);
329STUB(ifnet_tx_compl_status);
330STUB(ifnet_flowid);
331STUB(ifnet_enable_output);
332STUB(ifnet_disable_output);
333STUB(ifnet_get_ipsec_offload_frames);
334STUB(in6_localaddr);
335STUB(in_localaddr);
336STUB(in6addr_local);
337STUB(inaddr_local);
338STUB(inp_clear_INP_INADDR_ANY);
339STUB(ip_gre_output);
340STUB(m_cat);
341STUB(m_free);
342STUB(m_freem);
343STUB(m_get);
344STUB(m_gethdr);
345STUB(m_mtod);
346STUB(m_prepend_2);
347STUB(m_pullup);
348STUB(m_split);
349STUB(m_trailingspace);
350STUB(mbuf_get_driver_scratch);
351STUB(mbuf_get_priority);
352STUB(mbuf_get_service_class);
353STUB(mbuf_get_service_class_index);
354STUB(mbuf_get_service_class_max_count);
355STUB(mbuf_get_traffic_class_index);
356STUB(mbuf_get_traffic_class_max_count);
357STUB(mbuf_is_service_class_privileged);
358STUB(mbuf_pkthdr_aux_flags);
359STUB(mcl_to_paddr);
360STUB(net_add_domain);
361STUB(net_add_domain_old);
362STUB(net_add_proto);
363STUB(net_add_proto_old);
364STUB(net_del_domain);
365STUB(net_del_domain_old);
366STUB(net_del_proto);
367STUB(net_del_proto_old);
368STUB(pffinddomain);
369STUB(pffinddomain_old);
370STUB(pffindproto);
371STUB(pffindproto_old);
372STUB(pru_abort_notsupp);
373STUB(pru_accept_notsupp);
374STUB(pru_bind_notsupp);
375STUB(pru_connect2_notsupp);
376STUB(pru_connect_notsupp);
377STUB(pru_disconnect_notsupp);
378STUB(pru_listen_notsupp);
379STUB(pru_peeraddr_notsupp);
380STUB(pru_rcvd_notsupp);
381STUB(pru_rcvoob_notsupp);
382STUB(pru_send_notsupp);
383STUB(pru_send_list_notsupp);
384STUB(pru_sense_null);
385STUB(pru_shutdown_notsupp);
386STUB(pru_sockaddr_notsupp);
387STUB(pru_sopoll_notsupp);
388STUB(sbappendaddr);
389STUB(sbappendrecord);
390STUB(sbflush);
391STUB(sbspace);
392STUB(soabort);
393STUB(socantrcvmore);
394STUB(socantsendmore);
395STUB(sock_getlistener);
396STUB(sock_gettclassopt);
397STUB(sock_release);
398STUB(sock_retain);
399STUB(sock_settclassopt);
400STUB(sock_catchevents);
401STUB(sock_setupcall);
402STUB(sock_setupcalls);
403STUB(sodisconnect);
404STUB(sofree);
405STUB(sofreelastref);
406STUB(soisconnected);
407STUB(soisconnecting);
408STUB(soisdisconnected);
409STUB(soisdisconnecting);
410STUB(sonewconn);
411STUB(sooptcopyin);
412STUB(sooptcopyout);
413STUB(sopoll);
414STUB(soreceive);
415STUB(soreceive_list);
416STUB(soreserve);
417STUB(sorwakeup);
418STUB(sosend);
419STUB(sosend_list);
420STUB(utun_ctl_disable_crypto_dtls);
421STUB(utun_ctl_register_dtls);
422STUB(utun_pkt_dtls_input);
423STUB(dlil_resolve_multi);
424STUB(inet_cksum_simple);
425STUB(arp_ip_handle_input);
426STUB(arp_ifinit);
427STUB(arp_lookup_ip);
428STUB(ip_gre_register_input);
429STUB(sock_iskernel);
430#undef STUB
431
432/*
433 * Called from vm_pageout.c. Nothing to be done when there's no networking.
434 */
435void m_drain(void);
436void m_drain(void)
437{
438	return;
439}
440
441#endif /* !NETWORKING */
442