home *** CD-ROM | disk | FTP | other *** search
/ Il CD di internet / CD.iso / SOURCE / KERNEL-S / V1.2 / LINUX-1.2 / LINUX-1 / linux / net / inet / route.h < prev    next >
Encoding:
C/C++ Source or Header  |  1994-06-23  |  1.7 KB  |  54 lines

  1. /*
  2.  * INET        An implementation of the TCP/IP protocol suite for the LINUX
  3.  *        operating system.  INET  is implemented using the  BSD Socket
  4.  *        interface as the means of communication with the user level.
  5.  *
  6.  *        Definitions for the IP router.
  7.  *
  8.  * Version:    @(#)route.h    1.0.4    05/27/93
  9.  *
  10.  * Authors:    Ross Biro, <bir7@leland.Stanford.Edu>
  11.  *        Fred N. van Kempen, <waltje@uWalt.NL.Mugnet.ORG>
  12.  * Fixes:
  13.  *        Alan Cox    :    Reformatted. Added ip_rt_local()
  14.  *        Alan Cox    :    Support for TCP parameters.
  15.  *
  16.  *        This program is free software; you can redistribute it and/or
  17.  *        modify it under the terms of the GNU General Public License
  18.  *        as published by the Free Software Foundation; either version
  19.  *        2 of the License, or (at your option) any later version.
  20.  */
  21. #ifndef _ROUTE_H
  22. #define _ROUTE_H
  23.  
  24.  
  25. #include <linux/route.h>
  26.  
  27.  
  28. /* This is an entry in the IP routing table. */
  29. struct rtable 
  30. {
  31.     struct rtable        *rt_next;
  32.     unsigned long        rt_dst;
  33.     unsigned long        rt_mask;
  34.     unsigned long        rt_gateway;
  35.     unsigned char        rt_flags;
  36.     unsigned char        rt_metric;
  37.     short            rt_refcnt;
  38.     unsigned long        rt_use;
  39.     unsigned short        rt_mss;
  40.     unsigned long        rt_window;
  41.     struct device        *rt_dev;
  42. };
  43.  
  44.  
  45. extern void        ip_rt_flush(struct device *dev);
  46. extern void        ip_rt_add(short flags, unsigned long addr, unsigned long mask,
  47.                    unsigned long gw, struct device *dev, unsigned short mss, unsigned long window);
  48. extern struct rtable    *ip_rt_route(unsigned long daddr, struct options *opt, unsigned long *src_addr);
  49. extern struct rtable     *ip_rt_local(unsigned long daddr, struct options *opt, unsigned long *src_addr);
  50. extern int        rt_get_info(char * buffer, char **start, off_t offset, int length);
  51. extern int        ip_rt_ioctl(unsigned int cmd, void *arg);
  52.  
  53. #endif    /* _ROUTE_H */
  54.