4 * Symbol table for the linux networking subsystem. Moved here to
5 * make life simpler in ksyms.c.
8 #include <linux/config.h>
9 #include <linux/module.h>
11 #include <linux/types.h>
12 #include <linux/net.h>
14 #include <linux/netdevice.h>
15 #include <linux/inetdevice.h>
16 #include <linux/fddidevice.h>
17 #include <linux/trdevice.h>
18 #include <linux/ioport.h>
19 #include <net/neighbour.h>
22 #include <net/checksum.h>
23 #include <linux/etherdevice.h>
25 #include <linux/hippidevice.h>
27 #include <net/pkt_sched.h>
36 #include <net/protocol.h>
42 #include <net/route.h>
43 #include <net/inet_common.h>
44 #include <linux/inet.h>
45 #include <linux/mroute.h>
46 #include <linux/igmp.h>
48 extern struct net_proto_family inet_family_ops
;
49 extern __u32 sysctl_wmem_max
;
50 extern __u32 sysctl_rmem_max
;
52 #if defined(CONFIG_IPV6) || defined (CONFIG_IPV6_MODULE)
53 #include <linux/in6.h>
54 #include <linux/icmpv6.h>
56 #include <net/ndisc.h>
57 #include <net/transp_v6.h>
59 extern int tcp_tw_death_row_slot
;
60 extern int sysctl_local_port_range
[2];
61 extern int tcp_port_rover
;
62 extern int udp_port_rover
;
67 #include <linux/rtnetlink.h>
69 #if defined(CONFIG_ULTRA) || defined(CONFIG_WD80x3) || \
70 defined(CONFIG_EL2) || defined(CONFIG_NE2000) || \
71 defined(CONFIG_E2100) || defined(CONFIG_HPLAN_PLUS) || \
72 defined(CONFIG_HPLAN) || defined(CONFIG_AC3200) || \
73 defined(CONFIG_ES3210) || defined(CONFIG_ULTRA32) || \
74 defined(CONFIG_LNE390) || defined(CONFIG_NE3210) || \
75 defined(CONFIG_NE2K_PCI) || defined(CONFIG_APNE) || \
76 defined(CONFIG_DAYNAPORT)
77 #include "../drivers/net/8390.h"
80 extern int (*rarp_ioctl_hook
)(int,void*);
82 #ifdef CONFIG_IPX_MODULE
83 extern struct datalink_proto
*make_EII_client(void);
84 extern struct datalink_proto
*make_8023_client(void);
85 extern void destroy_EII_client(struct datalink_proto
*);
86 extern void destroy_8023_client(struct datalink_proto
*);
89 #ifdef CONFIG_ATALK_MODULE
94 extern int sysctl_max_syn_backlog
;
97 EXPORT_SYMBOL(dev_lockct
);
100 EXPORT_SYMBOL(skb_over_panic
);
101 EXPORT_SYMBOL(skb_under_panic
);
103 /* Socket layer global data */
104 EXPORT_SYMBOL(sockhash_lock
);
106 /* Socket layer registration */
107 EXPORT_SYMBOL(sock_register
);
108 EXPORT_SYMBOL(sock_unregister
);
111 EXPORT_SYMBOL(lock_sock
);
112 EXPORT_SYMBOL(release_sock
);
114 /* Socket layer support routines */
115 EXPORT_SYMBOL(memcpy_fromiovec
);
116 EXPORT_SYMBOL(memcpy_tokerneliovec
);
117 EXPORT_SYMBOL(sock_create
);
118 EXPORT_SYMBOL(sock_alloc
);
119 EXPORT_SYMBOL(sock_release
);
120 EXPORT_SYMBOL(sock_setsockopt
);
121 EXPORT_SYMBOL(sock_getsockopt
);
122 EXPORT_SYMBOL(sock_sendmsg
);
123 EXPORT_SYMBOL(sock_recvmsg
);
124 EXPORT_SYMBOL(sk_alloc
);
125 EXPORT_SYMBOL(sk_free
);
126 EXPORT_SYMBOL(sock_wake_async
);
127 EXPORT_SYMBOL(sock_alloc_send_skb
);
128 EXPORT_SYMBOL(sock_init_data
);
129 EXPORT_SYMBOL(sock_no_dup
);
130 EXPORT_SYMBOL(sock_no_release
);
131 EXPORT_SYMBOL(sock_no_bind
);
132 EXPORT_SYMBOL(sock_no_connect
);
133 EXPORT_SYMBOL(sock_no_socketpair
);
134 EXPORT_SYMBOL(sock_no_accept
);
135 EXPORT_SYMBOL(sock_no_getname
);
136 EXPORT_SYMBOL(sock_no_poll
);
137 EXPORT_SYMBOL(sock_no_ioctl
);
138 EXPORT_SYMBOL(sock_no_listen
);
139 EXPORT_SYMBOL(sock_no_shutdown
);
140 EXPORT_SYMBOL(sock_no_getsockopt
);
141 EXPORT_SYMBOL(sock_no_setsockopt
);
142 EXPORT_SYMBOL(sock_no_fcntl
);
143 EXPORT_SYMBOL(sock_no_sendmsg
);
144 EXPORT_SYMBOL(sock_no_recvmsg
);
145 EXPORT_SYMBOL(sock_rfree
);
146 EXPORT_SYMBOL(sock_wfree
);
147 EXPORT_SYMBOL(sock_wmalloc
);
148 EXPORT_SYMBOL(sock_rmalloc
);
149 EXPORT_SYMBOL(sock_rspace
);
150 EXPORT_SYMBOL(skb_recv_datagram
);
151 EXPORT_SYMBOL(skb_free_datagram
);
152 EXPORT_SYMBOL(skb_copy_datagram
);
153 EXPORT_SYMBOL(skb_copy_datagram_iovec
);
154 EXPORT_SYMBOL(skb_realloc_headroom
);
155 EXPORT_SYMBOL(datagram_poll
);
156 EXPORT_SYMBOL(put_cmsg
);
157 EXPORT_SYMBOL(net_families
);
158 EXPORT_SYMBOL(sock_kmalloc
);
159 EXPORT_SYMBOL(sock_kfree_s
);
162 EXPORT_SYMBOL(sk_run_filter
);
165 EXPORT_SYMBOL(neigh_table_init
);
166 EXPORT_SYMBOL(neigh_table_clear
);
167 EXPORT_SYMBOL(neigh_resolve_output
);
168 EXPORT_SYMBOL(neigh_connected_output
);
169 EXPORT_SYMBOL(neigh_update
);
170 EXPORT_SYMBOL(__neigh_event_send
);
171 EXPORT_SYMBOL(neigh_event_ns
);
172 EXPORT_SYMBOL(neigh_ifdown
);
174 EXPORT_SYMBOL(neigh_app_ns
);
177 EXPORT_SYMBOL(neigh_sysctl_register
);
179 EXPORT_SYMBOL(pneigh_lookup
);
180 EXPORT_SYMBOL(pneigh_enqueue
);
181 EXPORT_SYMBOL(neigh_destroy
);
182 EXPORT_SYMBOL(neigh_parms_alloc
);
183 EXPORT_SYMBOL(neigh_parms_release
);
184 EXPORT_SYMBOL(neigh_rand_reach_time
);
187 EXPORT_SYMBOL(dst_alloc
);
188 EXPORT_SYMBOL(__dst_free
);
189 EXPORT_SYMBOL(dst_destroy
);
191 /* misc. support routines */
192 EXPORT_SYMBOL(net_ratelimit
);
193 EXPORT_SYMBOL(net_random
);
194 EXPORT_SYMBOL(net_srandom
);
196 /* Needed by smbfs.o */
197 EXPORT_SYMBOL(__scm_destroy
);
198 EXPORT_SYMBOL(__scm_send
);
200 /* Needed by unix.o */
201 EXPORT_SYMBOL(scm_fp_dup
);
202 EXPORT_SYMBOL(max_files
);
203 EXPORT_SYMBOL(do_mknod
);
204 EXPORT_SYMBOL(memcpy_toiovec
);
205 EXPORT_SYMBOL(csum_partial
);
207 #ifdef CONFIG_IPX_MODULE
208 EXPORT_SYMBOL(make_8023_client
);
209 EXPORT_SYMBOL(destroy_8023_client
);
210 EXPORT_SYMBOL(make_EII_client
);
211 EXPORT_SYMBOL(destroy_EII_client
);
214 EXPORT_SYMBOL(sklist_destroy_socket
);
215 EXPORT_SYMBOL(sklist_insert_socket
);
217 EXPORT_SYMBOL(scm_detach_fds
);
220 EXPORT_SYMBOL(br_ioctl
);
224 /* Internet layer registration */
225 EXPORT_SYMBOL(inet_add_protocol
);
226 EXPORT_SYMBOL(inet_del_protocol
);
227 EXPORT_SYMBOL(rarp_ioctl_hook
);
228 EXPORT_SYMBOL(init_etherdev
);
229 EXPORT_SYMBOL(ip_route_output
);
230 EXPORT_SYMBOL(icmp_send
);
231 EXPORT_SYMBOL(ip_options_compile
);
232 EXPORT_SYMBOL(arp_send
);
233 EXPORT_SYMBOL(arp_broken_ops
);
234 EXPORT_SYMBOL(ip_id_count
);
235 EXPORT_SYMBOL(ip_send_check
);
236 EXPORT_SYMBOL(ip_fragment
);
237 EXPORT_SYMBOL(inet_family_ops
);
238 EXPORT_SYMBOL(in_aton
);
239 EXPORT_SYMBOL(ip_mc_inc_group
);
240 EXPORT_SYMBOL(ip_mc_dec_group
);
241 EXPORT_SYMBOL(__ip_finish_output
);
242 EXPORT_SYMBOL(inet_dgram_ops
);
243 EXPORT_SYMBOL(ip_cmsg_recv
);
245 /* Route manipulation */
246 EXPORT_SYMBOL(ip_rt_ioctl
);
247 EXPORT_SYMBOL(devinet_ioctl
);
249 /* needed for ip_gre -cw */
250 EXPORT_SYMBOL(ip_statistics
);
252 #ifdef CONFIG_DLCI_MODULE
253 extern int (*dlci_ioctl_hook
)(unsigned int, void *);
254 EXPORT_SYMBOL(dlci_ioctl_hook
);
259 EXPORT_SYMBOL(ipv6_addr_type
);
260 EXPORT_SYMBOL(icmpv6_send
);
262 #ifdef CONFIG_IPV6_MODULE
263 /* inet functions common to v4 and v6 */
264 EXPORT_SYMBOL(inet_stream_ops
);
265 EXPORT_SYMBOL(inet_release
);
266 EXPORT_SYMBOL(inet_stream_connect
);
267 EXPORT_SYMBOL(inet_dgram_connect
);
268 EXPORT_SYMBOL(inet_accept
);
269 EXPORT_SYMBOL(inet_poll
);
270 EXPORT_SYMBOL(inet_listen
);
271 EXPORT_SYMBOL(inet_shutdown
);
272 EXPORT_SYMBOL(inet_setsockopt
);
273 EXPORT_SYMBOL(inet_getsockopt
);
274 EXPORT_SYMBOL(inet_sendmsg
);
275 EXPORT_SYMBOL(inet_recvmsg
);
277 /* Socket demultiplexing. */
278 EXPORT_SYMBOL(tcp_ehash
);
279 EXPORT_SYMBOL(tcp_ehash_size
);
280 EXPORT_SYMBOL(tcp_listening_hash
);
281 EXPORT_SYMBOL(tcp_bhash
);
282 EXPORT_SYMBOL(tcp_bhash_size
);
283 EXPORT_SYMBOL(udp_hash
);
285 EXPORT_SYMBOL(destroy_sock
);
286 EXPORT_SYMBOL(ip_queue_xmit
);
287 EXPORT_SYMBOL(memcpy_fromiovecend
);
288 EXPORT_SYMBOL(csum_partial_copy_fromiovecend
);
289 EXPORT_SYMBOL(net_timer
);
290 /* UDP/TCP exported functions for TCPv6 */
291 EXPORT_SYMBOL(udp_ioctl
);
292 EXPORT_SYMBOL(udp_connect
);
293 EXPORT_SYMBOL(udp_sendmsg
);
294 EXPORT_SYMBOL(tcp_close
);
295 EXPORT_SYMBOL(tcp_accept
);
296 EXPORT_SYMBOL(tcp_write_wakeup
);
297 EXPORT_SYMBOL(tcp_read_wakeup
);
298 EXPORT_SYMBOL(tcp_write_space
);
299 EXPORT_SYMBOL(tcp_poll
);
300 EXPORT_SYMBOL(tcp_ioctl
);
301 EXPORT_SYMBOL(tcp_shutdown
);
302 EXPORT_SYMBOL(tcp_setsockopt
);
303 EXPORT_SYMBOL(tcp_getsockopt
);
304 EXPORT_SYMBOL(tcp_recvmsg
);
305 EXPORT_SYMBOL(tcp_send_synack
);
306 EXPORT_SYMBOL(tcp_check_req
);
307 EXPORT_SYMBOL(tcp_reset_xmit_timer
);
308 EXPORT_SYMBOL(tcp_parse_options
);
309 EXPORT_SYMBOL(tcp_rcv_established
);
310 EXPORT_SYMBOL(tcp_init_xmit_timers
);
311 EXPORT_SYMBOL(tcp_clear_xmit_timers
);
312 EXPORT_SYMBOL(tcp_slt_array
);
313 EXPORT_SYMBOL(__tcp_inc_slow_timer
);
314 EXPORT_SYMBOL(tcp_statistics
);
315 EXPORT_SYMBOL(tcp_rcv_state_process
);
316 EXPORT_SYMBOL(tcp_timewait_state_process
);
317 EXPORT_SYMBOL(tcp_do_sendmsg
);
318 EXPORT_SYMBOL(tcp_v4_rebuild_header
);
319 EXPORT_SYMBOL(tcp_v4_send_check
);
320 EXPORT_SYMBOL(tcp_v4_conn_request
);
321 EXPORT_SYMBOL(tcp_create_openreq_child
);
322 EXPORT_SYMBOL(tcp_bucket_create
);
323 EXPORT_SYMBOL(__tcp_put_port
);
324 EXPORT_SYMBOL(tcp_put_port
);
325 EXPORT_SYMBOL(tcp_inherit_port
);
326 EXPORT_SYMBOL(tcp_v4_syn_recv_sock
);
327 EXPORT_SYMBOL(tcp_v4_do_rcv
);
328 EXPORT_SYMBOL(tcp_v4_connect
);
329 EXPORT_SYMBOL(inet_addr_type
);
330 EXPORT_SYMBOL(net_reset_timer
);
331 EXPORT_SYMBOL(net_delete_timer
);
332 EXPORT_SYMBOL(udp_prot
);
333 EXPORT_SYMBOL(tcp_prot
);
334 EXPORT_SYMBOL(tcp_openreq_cachep
);
335 EXPORT_SYMBOL(ipv4_specific
);
336 EXPORT_SYMBOL(tcp_simple_retransmit
);
337 EXPORT_SYMBOL(tcp_transmit_skb
);
338 EXPORT_SYMBOL(tcp_connect
);
339 EXPORT_SYMBOL(tcp_make_synack
);
340 EXPORT_SYMBOL(tcp_tw_death_row_slot
);
341 EXPORT_SYMBOL(sysctl_local_port_range
);
342 EXPORT_SYMBOL(tcp_port_rover
);
343 EXPORT_SYMBOL(udp_port_rover
);
344 EXPORT_SYMBOL(tcp_sync_mss
);
345 EXPORT_SYMBOL(net_statistics
);
347 EXPORT_SYMBOL(xrlim_allow
);
349 EXPORT_SYMBOL(tcp_write_xmit
);
350 EXPORT_SYMBOL(dev_loopback_xmit
);
351 EXPORT_SYMBOL(tcp_regs
);
354 EXPORT_SYMBOL(sysctl_max_syn_backlog
);
358 #ifdef CONFIG_NETLINK
359 EXPORT_SYMBOL(netlink_set_err
);
360 EXPORT_SYMBOL(netlink_broadcast
);
361 EXPORT_SYMBOL(netlink_unicast
);
362 EXPORT_SYMBOL(netlink_kernel_create
);
363 EXPORT_SYMBOL(netlink_dump_start
);
364 EXPORT_SYMBOL(netlink_ack
);
365 #if defined(CONFIG_NETLINK_DEV) || defined(CONFIG_NETLINK_DEV_MODULE)
366 EXPORT_SYMBOL(netlink_attach
);
367 EXPORT_SYMBOL(netlink_detach
);
368 EXPORT_SYMBOL(netlink_post
);
372 #ifdef CONFIG_RTNETLINK
373 EXPORT_SYMBOL(rtattr_parse
);
374 EXPORT_SYMBOL(rtnetlink_links
);
375 EXPORT_SYMBOL(__rta_fill
);
376 EXPORT_SYMBOL(rtnetlink_dump_ifinfo
);
378 EXPORT_SYMBOL(neigh_delete
);
379 EXPORT_SYMBOL(neigh_add
);
380 EXPORT_SYMBOL(neigh_dump_info
);
383 EXPORT_SYMBOL(dev_set_allmulti
);
384 EXPORT_SYMBOL(dev_set_promiscuity
);
385 EXPORT_SYMBOL(sklist_remove_socket
);
386 EXPORT_SYMBOL(rtnl_sem
);
387 EXPORT_SYMBOL(rtnl_lock
);
388 EXPORT_SYMBOL(rtnl_unlock
);
391 /* Used by at least ipip.c. */
392 EXPORT_SYMBOL(ipv4_config
);
393 EXPORT_SYMBOL(dev_open
);
395 /* Used by other modules */
396 EXPORT_SYMBOL(in_ntoa
);
398 EXPORT_SYMBOL(ip_rcv
);
399 EXPORT_SYMBOL(arp_rcv
);
400 EXPORT_SYMBOL(arp_tbl
);
401 EXPORT_SYMBOL(arp_find
);
403 #endif /* CONFIG_INET */
405 #if defined(CONFIG_ULTRA) || defined(CONFIG_WD80x3) || \
406 defined(CONFIG_EL2) || defined(CONFIG_NE2000) || \
407 defined(CONFIG_E2100) || defined(CONFIG_HPLAN_PLUS) || \
408 defined(CONFIG_HPLAN) || defined(CONFIG_AC3200) || \
409 defined(CONFIG_ES3210) || defined(CONFIG_ULTRA32) || \
410 defined(CONFIG_LNE390) || defined(CONFIG_NE3210) || \
411 defined(CONFIG_NE2K_PCI) || defined(CONFIG_APNE) || \
412 defined(CONFIG_DAYNAPORT)
413 /* If 8390 NIC support is built in, we will need these. */
414 EXPORT_SYMBOL(ei_open
);
415 EXPORT_SYMBOL(ei_close
);
416 EXPORT_SYMBOL(ei_interrupt
);
417 EXPORT_SYMBOL(ethdev_init
);
418 EXPORT_SYMBOL(NS8390_init
);
422 EXPORT_SYMBOL(tr_setup
);
423 EXPORT_SYMBOL(tr_type_trans
);
424 EXPORT_SYMBOL(register_trdev
);
425 EXPORT_SYMBOL(unregister_trdev
);
426 EXPORT_SYMBOL(init_trdev
);
427 EXPORT_SYMBOL(tr_freedev
);
430 /* Device callback registration */
431 EXPORT_SYMBOL(register_netdevice_notifier
);
432 EXPORT_SYMBOL(unregister_netdevice_notifier
);
434 /* support for loadable net drivers */
436 EXPORT_SYMBOL(loopback_dev
);
437 EXPORT_SYMBOL(register_netdevice
);
438 EXPORT_SYMBOL(unregister_netdevice
);
439 EXPORT_SYMBOL(register_netdev
);
440 EXPORT_SYMBOL(unregister_netdev
);
441 EXPORT_SYMBOL(netdev_state_change
);
442 EXPORT_SYMBOL(ether_setup
);
443 EXPORT_SYMBOL(dev_new_index
);
444 EXPORT_SYMBOL(dev_get_by_index
);
445 EXPORT_SYMBOL(eth_type_trans
);
447 EXPORT_SYMBOL(fddi_type_trans
);
448 EXPORT_SYMBOL(fddi_setup
);
449 #endif /* CONFIG_FDDI */
450 EXPORT_SYMBOL(eth_copy_and_sum
);
451 EXPORT_SYMBOL(alloc_skb
);
452 EXPORT_SYMBOL(__kfree_skb
);
453 EXPORT_SYMBOL(skb_clone
);
454 EXPORT_SYMBOL(skb_copy
);
455 EXPORT_SYMBOL(netif_rx
);
456 EXPORT_SYMBOL(dev_add_pack
);
457 EXPORT_SYMBOL(dev_remove_pack
);
458 EXPORT_SYMBOL(dev_get
);
459 EXPORT_SYMBOL(dev_alloc
);
460 EXPORT_SYMBOL(dev_alloc_name
);
461 EXPORT_SYMBOL(dev_ioctl
);
462 EXPORT_SYMBOL(dev_queue_xmit
);
463 EXPORT_SYMBOL(netdev_dropping
);
464 #ifdef CONFIG_NET_FASTROUTE
465 EXPORT_SYMBOL(dev_fastroute_stat
);
467 #ifdef CONFIG_NET_HW_FLOWCONTROL
468 EXPORT_SYMBOL(netdev_register_fc
);
469 EXPORT_SYMBOL(netdev_unregister_fc
);
470 EXPORT_SYMBOL(netdev_fc_xoff
);
472 EXPORT_SYMBOL(dev_base
);
473 EXPORT_SYMBOL(dev_base_lock
);
474 EXPORT_SYMBOL(dev_close
);
475 EXPORT_SYMBOL(dev_mc_add
);
476 EXPORT_SYMBOL(dev_mc_delete
);
477 EXPORT_SYMBOL(dev_mc_upload
);
478 EXPORT_SYMBOL(n_tty_ioctl
);
479 EXPORT_SYMBOL(tty_register_ldisc
);
480 EXPORT_SYMBOL(kill_fasync
);
482 EXPORT_SYMBOL(if_port_text
);
485 EXPORT_SYMBOL(hippi_type_trans
);
486 EXPORT_SYMBOL(init_hippi_dev
);
487 EXPORT_SYMBOL(unregister_hipdev
);
490 EXPORT_SYMBOL(sysctl_wmem_max
);
491 EXPORT_SYMBOL(sysctl_rmem_max
);
493 #if defined(CONFIG_ATALK) || defined(CONFIG_ATALK_MODULE)
494 #include<linux/if_ltalk.h>
495 EXPORT_SYMBOL(ltalk_setup
);
499 /* Packet scheduler modules want these. */
500 EXPORT_SYMBOL(qdisc_destroy
);
501 EXPORT_SYMBOL(qdisc_reset
);
502 EXPORT_SYMBOL(qdisc_restart
);
503 EXPORT_SYMBOL(qdisc_head
);
504 EXPORT_SYMBOL(qdisc_create_dflt
);
505 EXPORT_SYMBOL(noop_qdisc
);
506 #ifdef CONFIG_NET_SCHED
508 EXPORT_SYMBOL(pfifo_qdisc_ops
);
509 EXPORT_SYMBOL(register_qdisc
);
510 EXPORT_SYMBOL(unregister_qdisc
);
511 EXPORT_SYMBOL(qdisc_get_rtab
);
512 EXPORT_SYMBOL(qdisc_put_rtab
);
513 #ifdef CONFIG_NET_ESTIMATOR
514 EXPORT_SYMBOL(qdisc_new_estimator
);
515 EXPORT_SYMBOL(qdisc_kill_estimator
);
517 #ifdef CONFIG_NET_CLS_POLICE
518 EXPORT_SYMBOL(tcf_police
);
519 EXPORT_SYMBOL(tcf_police_locate
);
520 EXPORT_SYMBOL(tcf_police_destroy
);
521 #ifdef CONFIG_RTNETLINK
522 EXPORT_SYMBOL(tcf_police_dump
);
526 #ifdef CONFIG_NET_CLS
527 EXPORT_SYMBOL(register_tcf_proto_ops
);
528 EXPORT_SYMBOL(unregister_tcf_proto_ops
);
531 EXPORT_SYMBOL(register_gifconf
);
533 #endif /* CONFIG_NET */