diff --git a/ax25ipd/ax25ipd.c b/ax25ipd/ax25ipd.c index 461147d..e85b44d 100644 --- a/ax25ipd/ax25ipd.c +++ b/ax25ipd/ax25ipd.c @@ -35,6 +35,25 @@ int opt_help = 0; char opt_configfile[PATH_MAX]; char opt_ttydevice[PATH_MAX]; +struct stats_s stats; + +int udp_mode; +int ip_mode; +unsigned short my_udp; +char ttydevice[PATH_MAX]; +int ttyspeed; +signed char mycallsign[7]; +unsigned char mycallsign2[7]; +unsigned char myalias[7]; +unsigned char myalias2[7]; +char bc_text[128]; +int bc_interval; +int bc_every; + +int digi; +int loglevel; +int dual_port; + struct option options[] = { {"version", 0, NULL, 'v'}, {"loglevel", 1, NULL, 'l'}, diff --git a/ax25ipd/ax25ipd.h b/ax25ipd/ax25ipd.h index b088247..367024b 100644 --- a/ax25ipd/ax25ipd.h +++ b/ax25ipd/ax25ipd.h @@ -72,24 +72,25 @@ #include #include -int udp_mode; /* true if we need a UDP socket */ -int ip_mode; /* true if we need the raw IP socket */ -unsigned short my_udp; /* the UDP port to use (network byte order) */ -char ttydevice[PATH_MAX]; /* the tty device for serial comms */ -int ttyspeed; /* The baud rate on the tty device */ -unsigned char mycallsign[7]; /* My callsign, shifted ASCII with SSID */ -unsigned char mycallsign2[7]; /* My seconds port callsign, shifted ASCII with SSID */ -unsigned char myalias[7]; /* An alias to use */ -unsigned char myalias2[7]; /* An alias for second port */ -char bc_text[128]; /* The text for beacon messages */ -int bc_interval; /* The interval, in seconds, between beacons */ -int bc_every; /* true=every, false=after */ -int digi; /* True if we are connected to a TNC */ -int loglevel; /* Verbosity level */ +extern int udp_mode; /* true if we need a UDP socket */ +extern int ip_mode; /* true if we need the raw IP socket */ +extern unsigned short my_udp; /* the UDP port to use (network byte order) */ +extern char ttydevice[PATH_MAX]; /* the tty device for serial comms */ +extern int ttyspeed; /* The baud rate on the tty device */ +extern signed char mycallsign[7]; /* My callsign, shifted ASCII with SSID */ +extern unsigned char mycallsign2[7]; /* My seconds port callsign, shifted ASCII with SSID */ +extern unsigned char myalias[7]; /* An alias to use */ +extern unsigned char myalias2[7]; /* An alias for second port */ +extern char bc_text[128]; /* The text for beacon messages */ +extern int bc_interval; /* The interval, in seconds, between beacons */ +extern int bc_every; /* true=every, false=after */ + +extern int digi; /* True if we are connected to a TNC */ +extern int loglevel; /* Verbosity level */ /* addition for dual port flag */ -int dual_port; +extern int dual_port; -struct { +struct stats_s { int kiss_in; /* # packets received */ int kiss_toobig; /* packet too large */ int kiss_badtype; /* control byte non-zero */ @@ -107,7 +108,9 @@ struct { int ip_tooshort; /* packet too short to be a valid frame */ int ip_not_for_me; /* packet not for me (in digi mode) */ int ip_i_am_dest; /* I am destination (in digi mode) */ -} stats; +}; + +extern struct stats_s stats; #define MAX_FRAME 2048