1/*
2 *  linux/net/netsyms.c
3 *
4 *  Symbol table for the linux networking subsystem. Moved here to
5 *  make life simpler in ksyms.c.
6 */
7
8#include <linux/config.h>
9#include <linux/module.h>
10
11#include <linux/types.h>
12#include <linux/net.h>
13#include <linux/in.h>
14#include <linux/netdevice.h>
15#include <linux/inetdevice.h>
16#include <linux/fddidevice.h>
17#include <linux/trdevice.h>
18#include <linux/fcdevice.h>
19#include <linux/ioport.h>
20#include <linux/tty.h>
21#include <net/neighbour.h>
22#include <net/snmp.h>
23#include <net/dst.h>
24#include <net/checksum.h>
25#include <linux/etherdevice.h>
26#include <net/route.h>
27#ifdef CONFIG_HIPPI
28#include <linux/hippidevice.h>
29#endif
30#include <net/pkt_sched.h>
31#include <net/scm.h>
32#include <linux/if_bridge.h>
33#include <linux/if_vlan.h>
34#include <linux/random.h>
35#ifdef CONFIG_NET_DIVERT
36#include <linux/divert.h>
37#endif /* CONFIG_NET_DIVERT */
38
39#ifdef CONFIG_NET
40extern __u32 sysctl_wmem_max;
41extern __u32 sysctl_rmem_max;
42#endif
43
44#ifdef CONFIG_INET
45#include <linux/ip.h>
46#include <net/protocol.h>
47#include <net/arp.h>
48#include <net/ip.h>
49#include <net/udp.h>
50#include <net/tcp.h>
51#include <net/icmp.h>
52#include <net/inet_common.h>
53#include <linux/inet.h>
54#include <linux/mroute.h>
55#include <linux/igmp.h>
56
57extern struct net_proto_family inet_family_ops;
58
59#if defined(CONFIG_IPV6) || defined(CONFIG_IPV6_MODULE) || defined(CONFIG_KHTTPD) || defined(CONFIG_KHTTPD_MODULE)
60#include <linux/in6.h>
61#include <linux/icmpv6.h>
62#include <net/ipv6.h>
63#include <net/ndisc.h>
64#include <net/transp_v6.h>
65#include <net/addrconf.h>
66
67extern int sysctl_local_port_range[2];
68extern int tcp_port_rover;
69extern int udp_port_rover;
70#endif
71
72#endif
73
74extern int netdev_finish_unregister(struct net_device *dev);
75
76#include <linux/rtnetlink.h>
77
78#ifdef CONFIG_IPX_MODULE
79extern struct datalink_proto   *make_EII_client(void);
80extern struct datalink_proto   *make_8023_client(void);
81extern void destroy_EII_client(struct datalink_proto *);
82extern void destroy_8023_client(struct datalink_proto *);
83#endif
84
85#ifdef CONFIG_ATALK_MODULE
86#include <net/sock.h>
87#endif
88
89#ifdef CONFIG_SYSCTL
90extern int sysctl_max_syn_backlog;
91#endif
92
93/* Skbuff symbols. */
94EXPORT_SYMBOL(skb_over_panic);
95EXPORT_SYMBOL(skb_under_panic);
96
97/* Socket layer registration */
98EXPORT_SYMBOL(sock_register);
99EXPORT_SYMBOL(sock_unregister);
100
101/* Socket locking */
102EXPORT_SYMBOL(__lock_sock);
103EXPORT_SYMBOL(__release_sock);
104
105/* Socket layer support routines */
106EXPORT_SYMBOL(memcpy_fromiovec);
107EXPORT_SYMBOL(memcpy_tokerneliovec);
108EXPORT_SYMBOL(sock_create);
109EXPORT_SYMBOL(sock_alloc);
110EXPORT_SYMBOL(sock_release);
111EXPORT_SYMBOL(sock_setsockopt);
112EXPORT_SYMBOL(sock_getsockopt);
113EXPORT_SYMBOL(sock_sendmsg);
114EXPORT_SYMBOL(sock_recvmsg);
115EXPORT_SYMBOL(sk_alloc);
116EXPORT_SYMBOL(sk_free);
117EXPORT_SYMBOL(sock_wake_async);
118EXPORT_SYMBOL(sock_alloc_send_skb);
119EXPORT_SYMBOL(sock_alloc_send_pskb);
120EXPORT_SYMBOL(sock_init_data);
121EXPORT_SYMBOL(sock_no_release);
122EXPORT_SYMBOL(sock_no_bind);
123EXPORT_SYMBOL(sock_no_connect);
124EXPORT_SYMBOL(sock_no_socketpair);
125EXPORT_SYMBOL(sock_no_accept);
126EXPORT_SYMBOL(sock_no_getname);
127EXPORT_SYMBOL(sock_no_poll);
128EXPORT_SYMBOL(sock_no_ioctl);
129EXPORT_SYMBOL(sock_no_listen);
130EXPORT_SYMBOL(sock_no_shutdown);
131EXPORT_SYMBOL(sock_no_getsockopt);
132EXPORT_SYMBOL(sock_no_setsockopt);
133EXPORT_SYMBOL(sock_no_sendmsg);
134EXPORT_SYMBOL(sock_no_recvmsg);
135EXPORT_SYMBOL(sock_no_mmap);
136EXPORT_SYMBOL(sock_no_sendpage);
137EXPORT_SYMBOL(sock_rfree);
138EXPORT_SYMBOL(sock_wfree);
139EXPORT_SYMBOL(sock_wmalloc);
140EXPORT_SYMBOL(sock_rmalloc);
141EXPORT_SYMBOL(skb_linearize);
142EXPORT_SYMBOL(skb_checksum);
143EXPORT_SYMBOL(skb_checksum_help);
144EXPORT_SYMBOL(skb_recv_datagram);
145EXPORT_SYMBOL(skb_free_datagram);
146EXPORT_SYMBOL(skb_copy_datagram);
147EXPORT_SYMBOL(skb_copy_datagram_iovec);
148EXPORT_SYMBOL(skb_copy_and_csum_datagram_iovec);
149EXPORT_SYMBOL(skb_copy_bits);
150EXPORT_SYMBOL(skb_copy_and_csum_bits);
151EXPORT_SYMBOL(skb_copy_and_csum_dev);
152EXPORT_SYMBOL(skb_copy_expand);
153EXPORT_SYMBOL(___pskb_trim);
154EXPORT_SYMBOL(__pskb_pull_tail);
155EXPORT_SYMBOL(pskb_expand_head);
156EXPORT_SYMBOL(pskb_copy);
157EXPORT_SYMBOL(skb_realloc_headroom);
158EXPORT_SYMBOL(datagram_poll);
159EXPORT_SYMBOL(put_cmsg);
160EXPORT_SYMBOL(sock_kmalloc);
161EXPORT_SYMBOL(sock_kfree_s);
162
163#ifdef CONFIG_FILTER
164EXPORT_SYMBOL(sk_run_filter);
165EXPORT_SYMBOL(sk_chk_filter);
166#endif
167
168EXPORT_SYMBOL(neigh_table_init);
169EXPORT_SYMBOL(neigh_table_clear);
170EXPORT_SYMBOL(neigh_resolve_output);
171EXPORT_SYMBOL(neigh_connected_output);
172EXPORT_SYMBOL(neigh_update);
173EXPORT_SYMBOL(neigh_create);
174EXPORT_SYMBOL(neigh_lookup);
175EXPORT_SYMBOL(__neigh_event_send);
176EXPORT_SYMBOL(neigh_event_ns);
177EXPORT_SYMBOL(neigh_ifdown);
178#ifdef CONFIG_ARPD
179EXPORT_SYMBOL(neigh_app_ns);
180#endif
181#ifdef CONFIG_SYSCTL
182EXPORT_SYMBOL(neigh_sysctl_register);
183#endif
184EXPORT_SYMBOL(pneigh_lookup);
185EXPORT_SYMBOL(pneigh_enqueue);
186EXPORT_SYMBOL(neigh_destroy);
187EXPORT_SYMBOL(neigh_parms_alloc);
188EXPORT_SYMBOL(neigh_parms_release);
189EXPORT_SYMBOL(neigh_rand_reach_time);
190EXPORT_SYMBOL(neigh_compat_output);
191
192/*	dst_entry	*/
193EXPORT_SYMBOL(dst_alloc);
194EXPORT_SYMBOL(__dst_free);
195EXPORT_SYMBOL(dst_destroy);
196
197/*	misc. support routines */
198EXPORT_SYMBOL(net_ratelimit);
199EXPORT_SYMBOL(net_random);
200EXPORT_SYMBOL(net_srandom);
201
202/* Needed by smbfs.o */
203EXPORT_SYMBOL(__scm_destroy);
204EXPORT_SYMBOL(__scm_send);
205
206/* Needed by unix.o */
207EXPORT_SYMBOL(scm_fp_dup);
208EXPORT_SYMBOL(files_stat);
209EXPORT_SYMBOL(memcpy_toiovec);
210
211#ifdef CONFIG_IPX_MODULE
212EXPORT_SYMBOL(make_8023_client);
213EXPORT_SYMBOL(destroy_8023_client);
214EXPORT_SYMBOL(make_EII_client);
215EXPORT_SYMBOL(destroy_EII_client);
216#endif
217
218/* for 801q VLAN support */
219#if defined(CONFIG_VLAN_8021Q) || defined(CONFIG_VLAN_8021Q_MODULE)
220EXPORT_SYMBOL(dev_change_flags);
221EXPORT_SYMBOL(vlan_ioctl_hook);
222#endif
223
224EXPORT_SYMBOL(sklist_destroy_socket);
225EXPORT_SYMBOL(sklist_insert_socket);
226
227EXPORT_SYMBOL(scm_detach_fds);
228
229#if defined(CONFIG_BRIDGE) || defined(CONFIG_BRIDGE_MODULE)
230EXPORT_SYMBOL(br_handle_frame_hook);
231#ifdef CONFIG_INET
232EXPORT_SYMBOL(br_ioctl_hook);
233#endif
234#endif
235
236#ifdef CONFIG_NET_DIVERT
237EXPORT_SYMBOL(alloc_divert_blk);
238EXPORT_SYMBOL(free_divert_blk);
239EXPORT_SYMBOL(divert_ioctl);
240#endif /* CONFIG_NET_DIVERT */
241
242#ifdef CONFIG_INET
243/* Internet layer registration */
244EXPORT_SYMBOL(inetdev_lock);
245EXPORT_SYMBOL(inet_add_protocol);
246EXPORT_SYMBOL(inet_del_protocol);
247EXPORT_SYMBOL(inet_register_protosw);
248EXPORT_SYMBOL(inet_unregister_protosw);
249EXPORT_SYMBOL(ip_route_output_key);
250EXPORT_SYMBOL(ip_route_input);
251EXPORT_SYMBOL(icmp_send);
252EXPORT_SYMBOL(ip_options_compile);
253EXPORT_SYMBOL(ip_options_undo);
254EXPORT_SYMBOL(arp_send);
255EXPORT_SYMBOL(arp_broken_ops);
256EXPORT_SYMBOL(__ip_select_ident);
257EXPORT_SYMBOL(ip_send_check);
258EXPORT_SYMBOL(ip_fragment);
259EXPORT_SYMBOL(inet_family_ops);
260EXPORT_SYMBOL(in_aton);
261EXPORT_SYMBOL(ip_mc_inc_group);
262EXPORT_SYMBOL(ip_mc_dec_group);
263EXPORT_SYMBOL(ip_finish_output);
264EXPORT_SYMBOL(inet_stream_ops);
265EXPORT_SYMBOL(inet_dgram_ops);
266EXPORT_SYMBOL(ip_cmsg_recv);
267EXPORT_SYMBOL(inet_addr_type);
268EXPORT_SYMBOL(inet_select_addr);
269EXPORT_SYMBOL(ip_dev_find);
270EXPORT_SYMBOL(inetdev_by_index);
271EXPORT_SYMBOL(in_dev_finish_destroy);
272EXPORT_SYMBOL(ip_defrag);
273
274/* Route manipulation */
275EXPORT_SYMBOL(ip_rt_ioctl);
276EXPORT_SYMBOL(devinet_ioctl);
277EXPORT_SYMBOL(register_inetaddr_notifier);
278EXPORT_SYMBOL(unregister_inetaddr_notifier);
279
280/* needed for ip_gre -cw */
281EXPORT_SYMBOL(ip_statistics);
282
283#ifdef CONFIG_DLCI_MODULE
284extern int (*dlci_ioctl_hook)(unsigned int, void *);
285EXPORT_SYMBOL(dlci_ioctl_hook);
286#endif
287
288
289#ifdef CONFIG_IPV6
290EXPORT_SYMBOL(ipv6_addr_type);
291EXPORT_SYMBOL(icmpv6_send);
292EXPORT_SYMBOL(ndisc_mc_map);
293EXPORT_SYMBOL(register_inet6addr_notifier);
294EXPORT_SYMBOL(unregister_inet6addr_notifier);
295#include <net/ip6_route.h>
296EXPORT_SYMBOL(ip6_route_output);
297#endif
298#if defined(CONFIG_IPV6_MODULE) || defined(CONFIG_KHTTPD) || defined(CONFIG_KHTTPD_MODULE)
299/* inet functions common to v4 and v6 */
300EXPORT_SYMBOL(inet_release);
301EXPORT_SYMBOL(inet_stream_connect);
302EXPORT_SYMBOL(inet_dgram_connect);
303EXPORT_SYMBOL(inet_accept);
304EXPORT_SYMBOL(inet_listen);
305EXPORT_SYMBOL(inet_shutdown);
306EXPORT_SYMBOL(inet_setsockopt);
307EXPORT_SYMBOL(inet_getsockopt);
308EXPORT_SYMBOL(inet_sendmsg);
309EXPORT_SYMBOL(inet_recvmsg);
310#ifdef INET_REFCNT_DEBUG
311EXPORT_SYMBOL(inet_sock_nr);
312#endif
313EXPORT_SYMBOL(inet_sock_destruct);
314EXPORT_SYMBOL(inet_sock_release);
315
316/* Socket demultiplexing. */
317EXPORT_SYMBOL(tcp_hashinfo);
318EXPORT_SYMBOL(tcp_listen_wlock);
319EXPORT_SYMBOL(udp_hash);
320EXPORT_SYMBOL(udp_hash_lock);
321
322EXPORT_SYMBOL(tcp_destroy_sock);
323EXPORT_SYMBOL(ip_queue_xmit);
324EXPORT_SYMBOL(memcpy_fromiovecend);
325EXPORT_SYMBOL(csum_partial_copy_fromiovecend);
326EXPORT_SYMBOL(tcp_v4_lookup_listener);
327/* UDP/TCP exported functions for TCPv6 */
328EXPORT_SYMBOL(udp_ioctl);
329EXPORT_SYMBOL(udp_connect);
330EXPORT_SYMBOL(udp_disconnect);
331EXPORT_SYMBOL(udp_sendmsg);
332EXPORT_SYMBOL(tcp_close);
333EXPORT_SYMBOL(tcp_disconnect);
334EXPORT_SYMBOL(tcp_accept);
335EXPORT_SYMBOL(tcp_write_wakeup);
336EXPORT_SYMBOL(tcp_write_space);
337EXPORT_SYMBOL(tcp_poll);
338EXPORT_SYMBOL(tcp_ioctl);
339EXPORT_SYMBOL(tcp_shutdown);
340EXPORT_SYMBOL(tcp_setsockopt);
341EXPORT_SYMBOL(tcp_getsockopt);
342EXPORT_SYMBOL(tcp_recvmsg);
343EXPORT_SYMBOL(tcp_send_synack);
344EXPORT_SYMBOL(tcp_check_req);
345EXPORT_SYMBOL(tcp_child_process);
346EXPORT_SYMBOL(tcp_parse_options);
347EXPORT_SYMBOL(tcp_rcv_established);
348EXPORT_SYMBOL(tcp_init_xmit_timers);
349EXPORT_SYMBOL(tcp_clear_xmit_timers);
350EXPORT_SYMBOL(tcp_statistics);
351EXPORT_SYMBOL(tcp_rcv_state_process);
352EXPORT_SYMBOL(tcp_timewait_state_process);
353EXPORT_SYMBOL(tcp_timewait_cachep);
354EXPORT_SYMBOL(tcp_timewait_kill);
355EXPORT_SYMBOL(tcp_sendmsg);
356EXPORT_SYMBOL(tcp_v4_rebuild_header);
357EXPORT_SYMBOL(tcp_v4_send_check);
358EXPORT_SYMBOL(tcp_v4_conn_request);
359EXPORT_SYMBOL(tcp_create_openreq_child);
360EXPORT_SYMBOL(tcp_bucket_create);
361EXPORT_SYMBOL(__tcp_put_port);
362EXPORT_SYMBOL(tcp_put_port);
363EXPORT_SYMBOL(tcp_inherit_port);
364EXPORT_SYMBOL(tcp_v4_syn_recv_sock);
365EXPORT_SYMBOL(tcp_v4_do_rcv);
366EXPORT_SYMBOL(tcp_v4_connect);
367EXPORT_SYMBOL(tcp_unhash);
368EXPORT_SYMBOL(udp_prot);
369EXPORT_SYMBOL(tcp_prot);
370EXPORT_SYMBOL(tcp_openreq_cachep);
371EXPORT_SYMBOL(ipv4_specific);
372EXPORT_SYMBOL(tcp_simple_retransmit);
373EXPORT_SYMBOL(tcp_transmit_skb);
374EXPORT_SYMBOL(tcp_connect);
375EXPORT_SYMBOL(tcp_make_synack);
376EXPORT_SYMBOL(tcp_tw_deschedule);
377EXPORT_SYMBOL(tcp_delete_keepalive_timer);
378EXPORT_SYMBOL(tcp_reset_keepalive_timer);
379EXPORT_SYMBOL(sysctl_local_port_range);
380EXPORT_SYMBOL(tcp_port_rover);
381EXPORT_SYMBOL(udp_port_rover);
382EXPORT_SYMBOL(tcp_sync_mss);
383EXPORT_SYMBOL(net_statistics);
384EXPORT_SYMBOL(__tcp_mem_reclaim);
385EXPORT_SYMBOL(tcp_sockets_allocated);
386EXPORT_SYMBOL(sysctl_tcp_reordering);
387EXPORT_SYMBOL(sysctl_tcp_rmem);
388EXPORT_SYMBOL(sysctl_tcp_wmem);
389EXPORT_SYMBOL(sysctl_tcp_ecn);
390EXPORT_SYMBOL(tcp_cwnd_application_limited);
391EXPORT_SYMBOL(tcp_sendpage);
392
393EXPORT_SYMBOL(tcp_write_xmit);
394
395EXPORT_SYMBOL(tcp_v4_remember_stamp);
396
397extern int sysctl_tcp_tw_recycle;
398
399#ifdef CONFIG_SYSCTL
400EXPORT_SYMBOL(sysctl_tcp_tw_recycle);
401EXPORT_SYMBOL(sysctl_max_syn_backlog);
402#endif
403
404#if defined(CONFIG_IPV6_MODULE)
405EXPORT_SYMBOL(secure_tcpv6_sequence_number);
406EXPORT_SYMBOL(secure_ipv6_id);
407#endif
408
409#endif
410
411EXPORT_SYMBOL(tcp_read_sock);
412
413EXPORT_SYMBOL(netlink_set_err);
414EXPORT_SYMBOL(netlink_broadcast);
415EXPORT_SYMBOL(netlink_unicast);
416EXPORT_SYMBOL(netlink_kernel_create);
417EXPORT_SYMBOL(netlink_dump_start);
418EXPORT_SYMBOL(netlink_ack);
419EXPORT_SYMBOL(netlink_set_nonroot);
420EXPORT_SYMBOL(netlink_register_notifier);
421EXPORT_SYMBOL(netlink_unregister_notifier);
422#if defined(CONFIG_NETLINK_DEV) || defined(CONFIG_NETLINK_DEV_MODULE)
423EXPORT_SYMBOL(netlink_attach);
424EXPORT_SYMBOL(netlink_detach);
425EXPORT_SYMBOL(netlink_post);
426#endif
427
428EXPORT_SYMBOL(rtattr_parse);
429EXPORT_SYMBOL(rtnetlink_links);
430EXPORT_SYMBOL(__rta_fill);
431EXPORT_SYMBOL(rtnetlink_dump_ifinfo);
432EXPORT_SYMBOL(rtnetlink_put_metrics);
433EXPORT_SYMBOL(rtnl);
434EXPORT_SYMBOL(neigh_delete);
435EXPORT_SYMBOL(neigh_add);
436EXPORT_SYMBOL(neigh_dump_info);
437
438/* ABI emulation layers need this */
439EXPORT_SYMBOL(move_addr_to_kernel);
440EXPORT_SYMBOL(move_addr_to_user);
441
442/* Used by at least ipip.c.  */
443EXPORT_SYMBOL(ipv4_config);
444
445/* Used by other modules */
446EXPORT_SYMBOL(xrlim_allow);
447
448EXPORT_SYMBOL(ip_rcv);
449EXPORT_SYMBOL(arp_rcv);
450EXPORT_SYMBOL(arp_tbl);
451EXPORT_SYMBOL(arp_find);
452
453#endif  /* CONFIG_INET */
454
455EXPORT_SYMBOL(dev_open);
456EXPORT_SYMBOL(dev_set_allmulti);
457EXPORT_SYMBOL(dev_set_promiscuity);
458EXPORT_SYMBOL(sklist_remove_socket);
459EXPORT_SYMBOL(rtnl_sem);
460EXPORT_SYMBOL(rtnl_lock);
461EXPORT_SYMBOL(rtnl_unlock);
462
463#ifdef CONFIG_TR
464EXPORT_SYMBOL(tr_type_trans);
465#endif
466
467/* Device callback registration */
468EXPORT_SYMBOL(register_netdevice_notifier);
469EXPORT_SYMBOL(unregister_netdevice_notifier);
470
471/* support for loadable net drivers */
472#ifdef CONFIG_NET
473EXPORT_SYMBOL(loopback_dev);
474EXPORT_SYMBOL(register_netdevice);
475EXPORT_SYMBOL(unregister_netdevice);
476EXPORT_SYMBOL(netdev_state_change);
477EXPORT_SYMBOL(dev_new_index);
478EXPORT_SYMBOL(dev_get_by_index);
479EXPORT_SYMBOL(__dev_get_by_index);
480EXPORT_SYMBOL(dev_get_by_name);
481EXPORT_SYMBOL(__dev_get_by_name);
482EXPORT_SYMBOL(netdev_finish_unregister);
483EXPORT_SYMBOL(netdev_set_master);
484EXPORT_SYMBOL(eth_type_trans);
485#ifdef CONFIG_FDDI
486EXPORT_SYMBOL(fddi_type_trans);
487#endif /* CONFIG_FDDI */
488EXPORT_SYMBOL(alloc_skb);
489EXPORT_SYMBOL(__kfree_skb);
490EXPORT_SYMBOL(skb_clone);
491EXPORT_SYMBOL(skb_copy);
492EXPORT_SYMBOL(netif_rx);
493EXPORT_SYMBOL(netif_receive_skb);
494EXPORT_SYMBOL(dev_add_pack);
495EXPORT_SYMBOL(dev_remove_pack);
496EXPORT_SYMBOL(dev_get);
497EXPORT_SYMBOL(dev_alloc);
498EXPORT_SYMBOL(dev_alloc_name);
499EXPORT_SYMBOL(__netdev_watchdog_up);
500#ifdef CONFIG_KMOD
501EXPORT_SYMBOL(dev_load);
502#endif
503EXPORT_SYMBOL(dev_ioctl);
504EXPORT_SYMBOL(dev_queue_xmit);
505#ifdef CONFIG_NET_HW_FLOWCONTROL
506EXPORT_SYMBOL(netdev_dropping);
507EXPORT_SYMBOL(netdev_register_fc);
508EXPORT_SYMBOL(netdev_unregister_fc);
509EXPORT_SYMBOL(netdev_fc_xoff);
510#endif
511EXPORT_SYMBOL(dev_base);
512EXPORT_SYMBOL(dev_base_lock);
513EXPORT_SYMBOL(dev_close);
514EXPORT_SYMBOL(dev_mc_add);
515EXPORT_SYMBOL(dev_mc_delete);
516EXPORT_SYMBOL(dev_mc_upload);
517EXPORT_SYMBOL(__kill_fasync);
518
519EXPORT_SYMBOL(if_port_text);
520
521#ifdef CONFIG_HIPPI
522EXPORT_SYMBOL(hippi_type_trans);
523#endif
524
525#ifdef CONFIG_NET_FASTROUTE
526EXPORT_SYMBOL(netdev_fastroute);
527#endif
528
529#ifdef CONFIG_SYSCTL
530EXPORT_SYMBOL(sysctl_wmem_max);
531EXPORT_SYMBOL(sysctl_rmem_max);
532#ifdef CONFIG_INET
533EXPORT_SYMBOL(sysctl_ip_default_ttl);
534#endif
535#endif
536
537/* Packet scheduler modules want these. */
538EXPORT_SYMBOL(qdisc_destroy);
539EXPORT_SYMBOL(qdisc_reset);
540EXPORT_SYMBOL(qdisc_restart);
541EXPORT_SYMBOL(qdisc_create_dflt);
542EXPORT_SYMBOL(noop_qdisc);
543EXPORT_SYMBOL(qdisc_tree_lock);
544#ifdef CONFIG_NET_SCHED
545PSCHED_EXPORTLIST;
546EXPORT_SYMBOL(pfifo_qdisc_ops);
547EXPORT_SYMBOL(register_qdisc);
548EXPORT_SYMBOL(unregister_qdisc);
549EXPORT_SYMBOL(qdisc_get_rtab);
550EXPORT_SYMBOL(qdisc_put_rtab);
551EXPORT_SYMBOL(qdisc_copy_stats);
552#ifdef CONFIG_NET_ESTIMATOR
553EXPORT_SYMBOL(qdisc_new_estimator);
554EXPORT_SYMBOL(qdisc_kill_estimator);
555#endif
556#ifdef CONFIG_NET_CLS_POLICE
557EXPORT_SYMBOL(tcf_police);
558EXPORT_SYMBOL(tcf_police_locate);
559EXPORT_SYMBOL(tcf_police_destroy);
560EXPORT_SYMBOL(tcf_police_dump);
561#endif
562#endif
563#ifdef CONFIG_NET_CLS
564EXPORT_SYMBOL(register_tcf_proto_ops);
565EXPORT_SYMBOL(unregister_tcf_proto_ops);
566#endif
567#ifdef CONFIG_NETFILTER
568#include <linux/netfilter.h>
569EXPORT_SYMBOL(nf_register_hook);
570EXPORT_SYMBOL(nf_unregister_hook);
571EXPORT_SYMBOL(nf_register_sockopt);
572EXPORT_SYMBOL(nf_unregister_sockopt);
573EXPORT_SYMBOL(nf_reinject);
574EXPORT_SYMBOL(nf_register_queue_handler);
575EXPORT_SYMBOL(nf_unregister_queue_handler);
576EXPORT_SYMBOL(nf_hook_slow);
577EXPORT_SYMBOL(nf_hooks);
578EXPORT_SYMBOL(nf_setsockopt);
579EXPORT_SYMBOL(nf_getsockopt);
580EXPORT_SYMBOL(ip_ct_attach);
581#ifdef CONFIG_INET
582#include <linux/netfilter_ipv4.h>
583EXPORT_SYMBOL(ip_route_me_harder);
584#endif
585#endif
586
587EXPORT_SYMBOL(register_gifconf);
588
589EXPORT_SYMBOL(softnet_data);
590
591#if defined(CONFIG_NET_RADIO) || defined(CONFIG_NET_PCMCIA_RADIO)
592#include <net/iw_handler.h>
593EXPORT_SYMBOL(wireless_send_event);
594#endif /* CONFIG_NET_RADIO || CONFIG_NET_PCMCIA_RADIO */
595
596#endif  /* CONFIG_NET */
597