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