2004-01-20 21:32:43 +03:00
/*
* Guillaume Cottenceau ( gc @ mandrakesoft . com )
*
* Copyright 2000 MandrakeSoft
*
* This software may be freely redistributed under the terms of the GNU
* public license .
*
* You should have received a copy of the GNU General Public License
* along with this program ; if not , write to the Free Software
* Foundation , Inc . , 675 Mass Ave , Cambridge , MA 0213 9 , USA .
*
*/
/*
* Portions from Erik Troan ( ewt @ redhat . com )
*
2018-05-09 15:21:26 +03:00
* Copyright 1996 Red Hat Software
2004-01-20 21:32:43 +03:00
*
*/
# ifndef _NETWORK_H_
# define _NETWORK_H_
# include <netinet/in.h>
# include <netinet/ip.h>
# include <arpa/inet.h>
2008-11-12 17:23:06 +03:00
enum return_type net_prepare ( void ) ;
2004-01-20 21:32:43 +03:00
enum return_type nfs_prepare ( void ) ;
enum return_type ftp_prepare ( void ) ;
enum return_type http_prepare ( void ) ;
enum boot_proto_type { BOOTPROTO_STATIC , BOOTPROTO_DHCP , BOOTPROTO_ADSL_PPPOE } ;
/* all of these in_addr things are in network byte order! */
struct interface_info {
char device [ 10 ] ;
int is_ptp , is_up ;
struct in_addr ip , netmask , broadcast , network ;
enum boot_proto_type boot_proto ;
char * user , * pass ; /* for ADSL connection */
} ;
/* these are to be used only by dhcp.c */
char * guess_netmask ( char * ip_addr ) ;
int configure_net_device ( struct interface_info * intf ) ;
extern char * hostname ;
extern char * domain ;
2007-09-19 00:46:56 +04:00
extern char * rootpath ;
2004-01-20 21:32:43 +03:00
extern struct in_addr gateway ;
extern struct in_addr dns_server ;
extern struct in_addr dns_server2 ;
2007-09-19 00:46:56 +04:00
extern struct in_addr next_server ;
2004-01-20 21:32:43 +03:00
# endif