summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRalf Baechle <ralf@linux-mips.org>1999-08-24 01:29:01 +0200
committerRalf Baechle <ralf@linux-mips.org>1999-08-24 01:29:01 +0200
commitf9ceba52b255476172ed5e4e3bbd89620ee9072f (patch)
tree7fc7149322f0340ba2df03669cc7063e18af73ae
parente2364df6e013d5eaf6fe226ee6d5a36d1cd6337d (diff)
Import libax25 0.0.7 from tarballlibax25-0.0.7
-rw-r--r--ChangeLog15
-rw-r--r--INSTALL4
-rw-r--r--Makefile.in8
-rw-r--r--acconfig.h8
-rw-r--r--config.h20
-rw-r--r--config.h.in18
-rwxr-xr-xconfigure119
-rw-r--r--configure.in32
-rw-r--r--kernel_ax25.h23
-rw-r--r--kernel_netrom.h98
-rw-r--r--kernel_rose.h26
11 files changed, 273 insertions, 98 deletions
diff --git a/ChangeLog b/ChangeLog
index 43a0f6e..3f53981 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,8 +1,13 @@
+libax25 0.0.7
+ * Added Tomi's patch to fix glibc 2.0 includes
+
+ -- Craig Small <csmall@small.dropbear.id.au> Mon, 23 Aug 1999 11:23:40 +1000
+
libax25 0.0.6
* Fixed pathnames.h typo
* Fixed instructions
-1999-0719 Craig Small <csmall@small.dropbear.id.au>
+ -- Craig Small <csmall@small.dropbear.id.au> , 19 Jul 1999
libax25 0.0.5
* More patches from Tomi for ax25io stuff
@@ -10,22 +15,22 @@ libax25 0.0.5
* The licence use is now obvious
* Added axports, rsports and nrports plus their man pages
-1999-07-05 Craig Small <csmall@small.dropbear.id.au>
+ -- Craig Small <csmall@small.dropbear.id.au> , 5 Jul 1999
libax25 0.0.4
* Made some more functions use const args
* Split the libaxio library out
-1999-04-30 Craig Small <csmall@small.dropbear.id.au>
+ -- Craig Small <csmall@small.dropbear.id.au> , 30 Apr 1999
libax25 0.0.3
* Added Jean-Pauls ROSE patches
* Changed all the convert names to ntoa type names
* Added Tomi's axio stuff
* Started writing ax25.3 and rose.3
-1999-04-20 Craig Small <csmall@small.dropbear.id.au>
+ -- Craig Small <csmall@small.dropbear.id.au> , 20 Apr 1999
libax25 0.0.2
* Initial version from Terry Dawson's code, split from the old
ax25-utils package.
-1999-04-02 Craig Small <csmall@small.dropbear.id.au>
+ -- Craig Small <csmall@small.dropbear.id.au> , 2 Apr 1999
diff --git a/INSTALL b/INSTALL
index cbe3cca..29eeb6e 100644
--- a/INSTALL
+++ b/INSTALL
@@ -2,8 +2,8 @@ Installation Instructions for AX.25 Library
===========================================
To make this library you will need the following:
- glibc2.1
- A Modern kernel
+ glibc2.1 (Debian 2.1.1-5 or RedHat glibc-2.1.2-3)
+ A Modern kernel (2.2.x)
libtool
To build it you type:
diff --git a/Makefile.in b/Makefile.in
index a44715b..45e2ca9 100644
--- a/Makefile.in
+++ b/Makefile.in
@@ -133,9 +133,9 @@ NROFF = nroff
HEADERS = $(libax25include_HEADERS) $(libax25ioinclude_HEADERS)
DIST_COMMON = README ./stamp-h.in AUTHORS COPYING ChangeLog INSTALL \
-Makefile.am Makefile.in NEWS aclocal.m4 config.guess config.h.in \
-config.sub configure configure.in install-sh ltconfig ltmain.sh missing \
-mkinstalldirs
+Makefile.am Makefile.in NEWS acconfig.h aclocal.m4 config.guess \
+config.h.in config.sub configure configure.in install-sh ltconfig \
+ltmain.sh missing mkinstalldirs
DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST)
@@ -178,7 +178,7 @@ $(srcdir)/config.h.in: $(srcdir)/stamp-h.in
rm -f $(srcdir)/stamp-h.in; \
$(MAKE) $(srcdir)/stamp-h.in; \
else :; fi
-$(srcdir)/stamp-h.in: $(top_srcdir)/configure.in $(ACLOCAL_M4)
+$(srcdir)/stamp-h.in: $(top_srcdir)/configure.in $(ACLOCAL_M4) acconfig.h
cd $(top_srcdir) && $(AUTOHEADER)
@echo timestamp > $(srcdir)/stamp-h.in 2> /dev/null
diff --git a/acconfig.h b/acconfig.h
new file mode 100644
index 0000000..65a2cfc
--- /dev/null
+++ b/acconfig.h
@@ -0,0 +1,8 @@
+/* Define if you have a proper netax25/ax25.h header file. */
+#undef HAVE_NETAX25_AX25_H
+
+/* Define if you have a proper netrom/netrom.h header file. */
+#undef HAVE_NETROM_NETROM_H
+
+/* Define if you have a proper netrose/rose.h header file. */
+#undef HAVE_NETROSE_ROSE_H
diff --git a/config.h b/config.h
index bef7f65..e5b62c2 100644
--- a/config.h
+++ b/config.h
@@ -13,6 +13,15 @@
/* Define if you have the ANSI C header files. */
#define STDC_HEADERS 1
+/* Define if you have a proper netax25/ax25.h header file. */
+#define HAVE_NETAX25_AX25_H 1
+
+/* Define if you have a proper netrom/netrom.h header file. */
+#define HAVE_NETROM_NETROM_H 1
+
+/* Define if you have a proper netrose/rose.h header file. */
+#define HAVE_NETROSE_ROSE_H 1
+
/* Define if you have the socket function. */
#define HAVE_SOCKET 1
@@ -28,15 +37,6 @@
/* Define if you have the <fcntl.h> header file. */
#define HAVE_FCNTL_H 1
-/* Define if you have the <netax25/ax25.h> header file. */
-#define HAVE_NETAX25_AX25_H 1
-
-/* Define if you have the <netrom/netrom.h> header file. */
-#define HAVE_NETROM_NETROM_H 1
-
-/* Define if you have the <netrose/rose.h> header file. */
-#define HAVE_NETROSE_ROSE_H 1
-
/* Define if you have the <sys/file.h> header file. */
#define HAVE_SYS_FILE_H 1
@@ -53,5 +53,5 @@
#define PACKAGE "libax25"
/* Version number of package */
-#define VERSION "0.0.6"
+#define VERSION "0.0.7"
diff --git a/config.h.in b/config.h.in
index a2894d1..e1f3599 100644
--- a/config.h.in
+++ b/config.h.in
@@ -12,6 +12,15 @@
/* Define if you have the ANSI C header files. */
#undef STDC_HEADERS
+/* Define if you have a proper netax25/ax25.h header file. */
+#undef HAVE_NETAX25_AX25_H
+
+/* Define if you have a proper netrom/netrom.h header file. */
+#undef HAVE_NETROM_NETROM_H
+
+/* Define if you have a proper netrose/rose.h header file. */
+#undef HAVE_NETROSE_ROSE_H
+
/* Define if you have the socket function. */
#undef HAVE_SOCKET
@@ -27,15 +36,6 @@
/* Define if you have the <fcntl.h> header file. */
#undef HAVE_FCNTL_H
-/* Define if you have the <netax25/ax25.h> header file. */
-#undef HAVE_NETAX25_AX25_H
-
-/* Define if you have the <netrom/netrom.h> header file. */
-#undef HAVE_NETROM_NETROM_H
-
-/* Define if you have the <netrose/rose.h> header file. */
-#undef HAVE_NETROSE_ROSE_H
-
/* Define if you have the <sys/file.h> header file. */
#undef HAVE_SYS_FILE_H
diff --git a/configure b/configure
index c950f69..b34f65a 100755
--- a/configure
+++ b/configure
@@ -533,10 +533,9 @@ fi
AXLIB_MAJOR_VERSION=0
AXLIB_MINOR_VERSION=0
-AXLIB_MICRO_VERSION=6
+AXLIB_MICRO_VERSION=7
AXLIB_VERSION=$AXLIB_MAJOR_VERSION.$AXLIB_MINOR_VERSION.$AXLIB_MICRO_VERSION
-# for automake
VERSION=$AXLIB_VERSION
PACKAGE=libax25
@@ -571,7 +570,7 @@ ac_configure=$ac_aux_dir/configure # This should be Cygnus configure.
# SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff"
# ./install, which can be erroneously created by make from ./install.sh.
echo $ac_n "checking for a BSD compatible install""... $ac_c" 1>&6
-echo "configure:575: checking for a BSD compatible install" >&5
+echo "configure:574: checking for a BSD compatible install" >&5
if test -z "$INSTALL"; then
if eval "test \"`echo '$''{'ac_cv_path_install'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
@@ -624,7 +623,7 @@ test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL_PROGRAM}'
test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644'
echo $ac_n "checking whether build environment is sane""... $ac_c" 1>&6
-echo "configure:628: checking whether build environment is sane" >&5
+echo "configure:627: checking whether build environment is sane" >&5
# Just in case
sleep 1
echo timestamp > conftestfile
@@ -681,7 +680,7 @@ test "$program_suffix" != NONE &&
test "$program_transform_name" = "" && program_transform_name="s,x,x,"
echo $ac_n "checking whether ${MAKE-make} sets \${MAKE}""... $ac_c" 1>&6
-echo "configure:685: checking whether ${MAKE-make} sets \${MAKE}" >&5
+echo "configure:684: checking whether ${MAKE-make} sets \${MAKE}" >&5
set dummy ${MAKE-make}; ac_make=`echo "$2" | sed 'y%./+-%__p_%'`
if eval "test \"`echo '$''{'ac_cv_prog_make_${ac_make}_set'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
@@ -727,7 +726,7 @@ EOF
missing_dir=`cd $ac_aux_dir && pwd`
echo $ac_n "checking for working aclocal""... $ac_c" 1>&6
-echo "configure:731: checking for working aclocal" >&5
+echo "configure:730: checking for working aclocal" >&5
# Run test in a subshell; some versions of sh will print an error if
# an executable is not found, even if stderr is redirected.
# Redirect stdin to placate older versions of autoconf. Sigh.
@@ -740,7 +739,7 @@ else
fi
echo $ac_n "checking for working autoconf""... $ac_c" 1>&6
-echo "configure:744: checking for working autoconf" >&5
+echo "configure:743: checking for working autoconf" >&5
# Run test in a subshell; some versions of sh will print an error if
# an executable is not found, even if stderr is redirected.
# Redirect stdin to placate older versions of autoconf. Sigh.
@@ -753,7 +752,7 @@ else
fi
echo $ac_n "checking for working automake""... $ac_c" 1>&6
-echo "configure:757: checking for working automake" >&5
+echo "configure:756: checking for working automake" >&5
# Run test in a subshell; some versions of sh will print an error if
# an executable is not found, even if stderr is redirected.
# Redirect stdin to placate older versions of autoconf. Sigh.
@@ -766,7 +765,7 @@ else
fi
echo $ac_n "checking for working autoheader""... $ac_c" 1>&6
-echo "configure:770: checking for working autoheader" >&5
+echo "configure:769: checking for working autoheader" >&5
# Run test in a subshell; some versions of sh will print an error if
# an executable is not found, even if stderr is redirected.
# Redirect stdin to placate older versions of autoconf. Sigh.
@@ -779,7 +778,7 @@ else
fi
echo $ac_n "checking for working makeinfo""... $ac_c" 1>&6
-echo "configure:783: checking for working makeinfo" >&5
+echo "configure:782: checking for working makeinfo" >&5
# Run test in a subshell; some versions of sh will print an error if
# an executable is not found, even if stderr is redirected.
# Redirect stdin to placate older versions of autoconf. Sigh.
@@ -796,6 +795,7 @@ fi
+
# Extract the first word of "gcc", so it can be a program name with args.
set dummy gcc; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
@@ -1891,54 +1891,93 @@ else
fi
done
-for ac_hdr in netax25/ax25.h netrom/netrom.h netrose/rose.h
-do
-ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
-echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6
-echo "configure:1899: checking for $ac_hdr" >&5
-if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-else
- cat > conftest.$ac_ext <<EOF
-#line 1904 "configure"
+
+echo $ac_n "checking for working netax25/ax25.h header file""... $ac_c" 1>&6
+echo "configure:1897: checking for working netax25/ax25.h header file" >&5
+cat > conftest.$ac_ext <<EOF
+#line 1899 "configure"
#include "confdefs.h"
-#include <$ac_hdr>
+#include <netax25/ax25.h>
EOF
-ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:1909: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
-ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
-if test -z "$ac_err"; then
+if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
+ egrep "ax25_fwd_struct" >/dev/null 2>&1; then
rm -rf conftest*
- eval "ac_cv_header_$ac_safe=yes"
+ has_ax25=yes
else
- echo "$ac_err" >&5
- echo "configure: failed program was:" >&5
- cat conftest.$ac_ext >&5
rm -rf conftest*
- eval "ac_cv_header_$ac_safe=no"
+ has_ax25=no
fi
rm -f conftest*
-fi
-if eval "test \"`echo '$ac_cv_header_'$ac_safe`\" = yes"; then
+
+if test "$has_ax25" = "yes" ; then
+ cat >> confdefs.h <<\EOF
+#define HAVE_NETAX25_AX25_H 1
+EOF
+
echo "$ac_t""yes" 1>&6
- ac_tr_hdr=HAVE_`echo $ac_hdr | sed 'y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%'`
- cat >> confdefs.h <<EOF
-#define $ac_tr_hdr 1
+else
+ echo "$ac_t""no" 1>&6
+fi
+echo $ac_n "checking for working netrom/netrom.h header file""... $ac_c" 1>&6
+echo "configure:1923: checking for working netrom/netrom.h header file" >&5
+cat > conftest.$ac_ext <<EOF
+#line 1925 "configure"
+#include "confdefs.h"
+#include <netrom/netrom.h>
EOF
-
+if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
+ egrep "unsigned int ndigis" >/dev/null 2>&1; then
+ rm -rf conftest*
+ has_netrom=yes
+else
+ rm -rf conftest*
+ has_netrom=no
+fi
+rm -f conftest*
+
+if test "$has_netrom" = "yes" ; then
+ cat >> confdefs.h <<\EOF
+#define HAVE_NETROM_NETROM_H 1
+EOF
+
+ echo "$ac_t""yes" 1>&6
else
echo "$ac_t""no" 1>&6
fi
-done
+echo $ac_n "checking for working netrose/rose.h header file""... $ac_c" 1>&6
+echo "configure:1949: checking for working netrose/rose.h header file" >&5
+cat > conftest.$ac_ext <<EOF
+#line 1951 "configure"
+#include "confdefs.h"
+#include <netrose/rose.h>
+EOF
+if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
+ egrep "rose_facilities_struct" >/dev/null 2>&1; then
+ rm -rf conftest*
+ has_rose=yes
+else
+ rm -rf conftest*
+ has_rose=no
+fi
+rm -f conftest*
+if test "$has_rose" = "yes" ; then
+ cat >> confdefs.h <<\EOF
+#define HAVE_NETROSE_ROSE_H 1
+EOF
+
+ echo "$ac_t""yes" 1>&6
+else
+ echo "$ac_t""no" 1>&6
+fi
echo $ac_n "checking for working const""... $ac_c" 1>&6
-echo "configure:1937: checking for working const" >&5
+echo "configure:1976: checking for working const" >&5
if eval "test \"`echo '$''{'ac_cv_c_const'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
cat > conftest.$ac_ext <<EOF
-#line 1942 "configure"
+#line 1981 "configure"
#include "confdefs.h"
int main() {
@@ -1987,7 +2026,7 @@ ccp = (char const *const *) p;
; return 0; }
EOF
-if { (eval echo configure:1991: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:2030: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
rm -rf conftest*
ac_cv_c_const=yes
else
diff --git a/configure.in b/configure.in
index 208e3db..c34e0f9 100644
--- a/configure.in
+++ b/configure.in
@@ -2,14 +2,15 @@ dnl Process this file with autoconf to produce a configure script.
AC_INIT(axlib.h)
AXLIB_MAJOR_VERSION=0
AXLIB_MINOR_VERSION=0
-AXLIB_MICRO_VERSION=6
+AXLIB_MICRO_VERSION=7
AXLIB_VERSION=$AXLIB_MAJOR_VERSION.$AXLIB_MINOR_VERSION.$AXLIB_MICRO_VERSION
-# for automake
+dnl For automake
VERSION=$AXLIB_VERSION
PACKAGE=libax25
AM_INIT_AUTOMAKE($PACKAGE, $VERSION)
+
AM_CONFIG_HEADER(config.h)
dnl Checks for programs.
@@ -27,7 +28,32 @@ AC_CHECK_FUNCS(socket strdup strerror strspn)
dnl Checks for header files.
AC_HEADER_STDC
AC_CHECK_HEADERS(fcntl.h sys/file.h sys/ioctl.h unistd.h zlib.h)
-AC_CHECK_HEADERS(netax25/ax25.h netrom/netrom.h netrose/rose.h)
+
+dnl Checks for working glibc 2.1 headers
+AC_MSG_CHECKING(for working netax25/ax25.h header file)
+AC_HEADER_EGREP(ax25_fwd_struct, netax25/ax25.h, has_ax25=yes, has_ax25=no)
+if test "$has_ax25" = "yes" ; then
+ AC_DEFINE(HAVE_NETAX25_AX25_H)
+ AC_MSG_RESULT(yes)
+else
+ AC_MSG_RESULT(no)
+fi
+AC_MSG_CHECKING(for working netrom/netrom.h header file)
+AC_HEADER_EGREP(unsigned int ndigis, netrom/netrom.h, has_netrom=yes, has_netrom=no)
+if test "$has_netrom" = "yes" ; then
+ AC_DEFINE(HAVE_NETROM_NETROM_H)
+ AC_MSG_RESULT(yes)
+else
+ AC_MSG_RESULT(no)
+fi
+AC_MSG_CHECKING(for working netrose/rose.h header file)
+AC_HEADER_EGREP(rose_facilities_struct, netrose/rose.h, has_rose=yes, has_rose=no)
+if test "$has_rose" = "yes" ; then
+ AC_DEFINE(HAVE_NETROSE_ROSE_H)
+ AC_MSG_RESULT(yes)
+else
+ AC_MSG_RESULT(no)
+fi
dnl Checks for typedefs, structures, and compiler characteristics.
AC_C_CONST
diff --git a/kernel_ax25.h b/kernel_ax25.h
index fc6b40b..093ffb2 100644
--- a/kernel_ax25.h
+++ b/kernel_ax25.h
@@ -36,6 +36,7 @@
#define AX25_IDLE 9
#define AX25_PACLEN 10
#define AX25_IPMAXQUEUE 11
+#define AX25_IAMDIGI 12
#define AX25_KILL 99
/* AX.25 socket ioctls: */
@@ -48,6 +49,9 @@
#define SIOCAX25SETPARMS (SIOCPROTOPRIVATE+6)
#define SIOCAX25OPTRT (SIOCPROTOPRIVATE+7)
#define SIOCAX25CTLCON (SIOCPROTOPRIVATE+8)
+#define SIOCAX25GETINFO (SIOCPROTOPRIVATE+9)
+#define SIOCAX25ADDFWD (SIOCPROTOPRIVATE+10)
+#define SIOCAX25DELFWD (SIOCPROTOPRIVATE+11)
/* unknown: */
#define AX25_NOUID_DEFAULT 0
@@ -101,6 +105,25 @@ struct ax25_ctl_struct
ax25_address dest_addr;
unsigned int cmd;
unsigned long arg;
+ unsigned char digi_count;
+ ax25_address digi_addr[AX25_MAX_DIGIS];
+ };
+
+struct ax25_info_struct
+ {
+ unsigned int n2, n2count;
+ unsigned int t1, t1timer;
+ unsigned int t2, t2timer;
+ unsigned int t3, t3timer;
+ unsigned int idle, idletimer;
+ unsigned int state;
+ unsigned int rcv_q, snd_q;
+ };
+
+struct ax25_fwd_struct
+ {
+ ax25_address port_from;
+ ax25_address port_to;
};
/* AX.25 route structure: */
diff --git a/kernel_netrom.h b/kernel_netrom.h
index 6939b32..2255d18 100644
--- a/kernel_netrom.h
+++ b/kernel_netrom.h
@@ -1,34 +1,84 @@
-/*
- * These are the public elements of the Linux kernel NET/ROM implementation.
- * For kernel AX.25 see the file ax25.h. This file requires ax25.h for the
- * definition of the ax25_address structure.
- */
+/* Copyright (C) 1997 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
-#ifndef NETROM_KERNEL_H
-#define NETROM_KERNEL_H
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Library General Public License as
+ published by the Free Software Foundation; either version 2 of the
+ License, or (at your option) any later version.
-#define NETROM_MTU 236
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Library General Public License for more details.
+ You should have received a copy of the GNU Library General Public
+ License along with the GNU C Library; see the file COPYING.LIB. If not,
+ write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+ Boston, MA 02111-1307, USA. */
+
+#ifndef _NETROM_NETROM_H
+#define _NETROM_NETROM_H 1
+
+/*#include <netax25/ax25.h>*/
+
+/* Setsockoptions(2) level. Thanks to BSD these must match IPPROTO_xxx. */
+#define SOL_NETROM 259
+
+/* NetRom control values: */
#define NETROM_T1 1
#define NETROM_T2 2
#define NETROM_N2 3
+#define NETROM_PACLEN 5
#define NETROM_T4 6
-#define NETROM_IDLE 7
+#define NETROM_IDLE 7
+
+#define NETROM_KILL 99
+/* Type of route: */
+#define NETROM_NEIGH 0
+#define NETROM_NODE 1
+
+struct nr_route_struct
+ {
+ int type;
+ ax25_address callsign;
+ char device[16];
+ unsigned int quality;
+ char mnemonic[7];
+ ax25_address neighbour;
+ unsigned int obs_count;
+ unsigned int ndigis;
+ ax25_address digipeaters[AX25_MAX_DIGIS];
+ };
+
+/* NetRom socket ioctls: */
+#define SIOCNRGETPARMS (SIOCPROTOPRIVATE+0)
+#define SIOCNRSETPARMS (SIOCPROTOPRIVATE+1)
#define SIOCNRDECOBS (SIOCPROTOPRIVATE+2)
+#define SIOCNRRTCTL (SIOCPROTOPRIVATE+3)
+#define SIOCNRCTLCON (SIOCPROTOPRIVATE+4)
+
+/* NetRom parameter structure: */
+struct nr_parms_struct
+ {
+ unsigned int quality;
+ unsigned int obs_count;
+ unsigned int ttl;
+ unsigned int timeout;
+ unsigned int ack_delay;
+ unsigned int busy_delay;
+ unsigned int tries;
+ unsigned int window;
+ unsigned int paclen;
+ };
+
+/* NetRom control structure: */
+struct nr_ctl_struct
+ {
+ unsigned char index;
+ unsigned char id;
+ unsigned int cmd;
+ unsigned long arg;
+ };
-struct nr_route_struct {
-#define NETROM_NEIGH 0
-#define NETROM_NODE 1
- int type;
- ax25_address callsign;
- char device[16];
- unsigned int quality;
- char mnemonic[7];
- ax25_address neighbour;
- unsigned int obs_count;
- unsigned int ndigis;
- ax25_address digipeaters[AX25_MAX_DIGIS];
-};
-
-#endif
+#endif /* netrom/netrom.h */
diff --git a/kernel_rose.h b/kernel_rose.h
index 96ea1eb..1e93b6b 100644
--- a/kernel_rose.h
+++ b/kernel_rose.h
@@ -1,5 +1,5 @@
/* Definitions for Rose packet radio address family.
- Copyright (C) 1998 Free Software Foundation, Inc.
+ Copyright (C) 1998, 1999 Free Software Foundation, Inc.
This file is part of the GNU C Library.
The GNU C Library is free software; you can redistribute it and/or
@@ -31,6 +31,8 @@
requires ax25.h for the definition of the ax25_address structure. */
#define ROSE_MTU 251
+#define ROSE_MAX_DIGIS 6
+
#define ROSE_DEFER 1
#define ROSE_T1 2
#define ROSE_T2 3
@@ -46,6 +48,7 @@
#define SIOCRSACCEPT (SIOCPROTOPRIVATE + 3)
#define SIOCRSCLRRT (SIOCPROTOPRIVATE + 4)
#define SIOCRSGL2CALL (SIOCPROTOPRIVATE + 5)
+#define SIOCRSGFACILITIES (SIOCPROTOPRIVATE + 6)
#define ROSE_DTE_ORIGINATED 0x00
#define ROSE_NUMBER_BUSY 0x01
@@ -73,6 +76,15 @@ struct sockaddr_rose
ax25_address srose_digi;
};
+struct full_sockaddr_rose
+{
+ sa_family_t srose_family;
+ rose_address srose_addr;
+ ax25_address srose_call;
+ unsigned int srose_ndigis;
+ ax25_address srose_digis[ROSE_MAX_DIGIS];
+};
+
struct rose_route_struct
{
rose_address address;
@@ -89,4 +101,16 @@ struct rose_cause_struct
unsigned char diagnostic;
};
+struct rose_facilities_struct
+{
+ rose_address source_addr, dest_addr;
+ ax25_address source_call, dest_call;
+ unsigned char source_ndigis, dest_ndigis;
+ ax25_address source_digis[ROSE_MAX_DIGIS];
+ ax25_address dest_digis[ROSE_MAX_DIGIS];
+ unsigned int rand;
+ rose_address fail_addr;
+ ax25_address fail_call;
+};
+
#endif /* netrose/rose.h */