update to sualibrary-0.1.2 from 2002-11-26
* Contains Relaying functionality using hostnames. * Correct some bugs * Compiles and runs on Linux, FreeBSD, Max OS X .... * Tested on IPv4 and IPV6 networks * interoperable with other SUA implementations * corresponds to sua draft v13 * requires SCTP implementation sctplib-1.0.0-pre19 from www.sctp.demaster
parent
7e7186ca00
commit
3dc72b8cff
104
configure.in
104
configure.in
|
@ -8,7 +8,7 @@ AC_INIT(acconfig.h)
|
|||
AC_CANONICAL_SYSTEM
|
||||
AC_ARG_PROGRAM
|
||||
|
||||
AM_INIT_AUTOMAKE(sualibrary,0.1.0)
|
||||
AM_INIT_AUTOMAKE(sualibrary,0.1.2)
|
||||
|
||||
AC_PREFIX_DEFAULT(/usr/local)
|
||||
if test "x$prefix" = "xNONE"; then
|
||||
|
@ -16,10 +16,10 @@ if test "x$prefix" = "xNONE"; then
|
|||
ac_configure_args="$ac_configure_args --prefix $prefix"
|
||||
fi
|
||||
|
||||
dnl keep this order because automake gets confused apart from the authors
|
||||
# keep this order because automake gets confused apart from the authors
|
||||
AM_CONFIG_HEADER(config.h:config.h.in)
|
||||
|
||||
dnl Checks for programs.
|
||||
# Checks for programs.
|
||||
AC_PROG_AWK
|
||||
AC_PROG_CC
|
||||
AC_PROG_INSTALL
|
||||
|
@ -28,23 +28,23 @@ AC_PROG_CXX
|
|||
AC_PROG_RANLIB
|
||||
|
||||
|
||||
dnl Checks for libraries.
|
||||
dnl create only shared libtool-libraries (add --enable-shared)
|
||||
# Checks for libraries.
|
||||
# create only shared libtool-libraries (add --enable-shared)
|
||||
AC_ENABLE_SHARED(no)
|
||||
dnl AM_DISABLE_SHARED
|
||||
# AM_DISABLE_SHARED
|
||||
|
||||
dnl set the following to yes, if you want to create static
|
||||
dnl libtool-libraries, else no
|
||||
# set the following to yes, if you want to create static
|
||||
# libtool-libraries, else no
|
||||
AC_ENABLE_STATIC(yes)
|
||||
|
||||
dnl create a working libtool-script
|
||||
# create a working libtool-script
|
||||
if test -z "$LIBTOOL"; then
|
||||
AC_LANG_SAVE
|
||||
AC_LANG_CPLUSPLUS
|
||||
AC_LIBTOOL_DLOPEN
|
||||
AM_PROG_LIBTOOL
|
||||
dnl LIBTOOL="$LIBTOOL --silent"
|
||||
dnl AC_SUBST(LIBTOOL)
|
||||
# LIBTOOL="$LIBTOOL --silent"
|
||||
# AC_SUBST(LIBTOOL)
|
||||
AC_LANG_RESTORE
|
||||
LIBTOOL_SHELL='/bin/sh ./libtool'
|
||||
else
|
||||
|
@ -52,8 +52,8 @@ else
|
|||
fi
|
||||
|
||||
|
||||
dnl activate the following for some additional tests
|
||||
dnl (compat, crypt, socket, nsl, ...)
|
||||
# activate the following for some additional tests
|
||||
# (compat, crypt, socket, nsl, ...)
|
||||
|
||||
all_libraries="$USER_LDFLAGS $all_libraries"
|
||||
all_includes="$all_includes $USER_INCLUDES"
|
||||
|
@ -61,7 +61,7 @@ AC_SUBST(all_includes)
|
|||
AC_SUBST(all_libraries)
|
||||
AC_SUBST(AUTODIRS)
|
||||
|
||||
dnl Checks for header files.
|
||||
# Checks for header files.
|
||||
|
||||
AC_HEADER_STDC
|
||||
AC_HEADER_TIME
|
||||
|
@ -70,24 +70,24 @@ sys/socket.h netinet/icmp6.h)
|
|||
AC_CHECK_HEADERS(sys/poll.h, AC_DEFINE(HAVE_SYS_POLL_H))
|
||||
|
||||
|
||||
dnl Checks for typedefs, structures, and compiler characteristics.
|
||||
# Checks for typedefs, structures, and compiler characteristics.
|
||||
|
||||
dnl ----------------------
|
||||
dnl Packages configuration - Blatantly stolen from zebra !
|
||||
dnl ----------------------
|
||||
# ----------------------
|
||||
# Packages configuration - Blatantly stolen from zebra !
|
||||
# ----------------------
|
||||
AC_ARG_ENABLE(ipv6,
|
||||
[ --disable-ipv6 turn off IPv6 support ])
|
||||
|
||||
dnl ----------
|
||||
dnl IPv6 check
|
||||
dnl ----------
|
||||
# ----------
|
||||
# IPv6 check
|
||||
# ----------
|
||||
AC_MSG_CHECKING(whether this OS does have IPv6 stack)
|
||||
if test "${enable_ipv6}" = "no"; then
|
||||
AC_MSG_RESULT(disabled)
|
||||
else
|
||||
dnl ----------
|
||||
dnl INRIA IPv6
|
||||
dnl ----------
|
||||
# ----------
|
||||
# INRIA IPv6
|
||||
# ----------
|
||||
if grep IPV6_INRIA_VERSION /usr/include/netinet/in.h >/dev/null 2>&1; then
|
||||
cv_ipv6=yes
|
||||
AC_DEFINE(HAVE_IPV6)
|
||||
|
@ -95,9 +95,9 @@ if grep IPV6_INRIA_VERSION /usr/include/netinet/in.h >/dev/null 2>&1; then
|
|||
LIB_IPV6=""
|
||||
AC_MSG_RESULT(INRIA IPv6)
|
||||
fi
|
||||
dnl ---------
|
||||
dnl KAME IPv6
|
||||
dnl ---------
|
||||
# ---------
|
||||
# KAME IPv6
|
||||
# ---------
|
||||
if grep WIDE /usr/include/netinet6/in6.h >/dev/null 2>&1; then
|
||||
cv_ipv6=yes
|
||||
AC_DEFINE(HAVE_IPV6)
|
||||
|
@ -107,9 +107,9 @@ if grep WIDE /usr/include/netinet6/in6.h >/dev/null 2>&1; then
|
|||
fi
|
||||
AC_MSG_RESULT(KAME)
|
||||
fi
|
||||
dnl ---------
|
||||
dnl NRL check
|
||||
dnl ---------
|
||||
# ---------
|
||||
# NRL check
|
||||
# ---------
|
||||
if grep NRL /usr/include/netinet6/in6.h >/dev/null 2>&1; then
|
||||
cv_ipv6=yes
|
||||
AC_DEFINE(HAVE_IPV6)
|
||||
|
@ -121,11 +121,11 @@ if grep NRL /usr/include/netinet6/in6.h >/dev/null 2>&1; then
|
|||
AC_MSG_RESULT(NRL)
|
||||
fi
|
||||
fi
|
||||
dnl ----------
|
||||
dnl Linux IPv6
|
||||
dnl ----------
|
||||
# ----------
|
||||
# Linux IPv6
|
||||
# ----------
|
||||
if test "${enable_ipv6}" = "yes"; then
|
||||
AC_EGREP_CPP(yes, [dnl
|
||||
AC_EGREP_CPP(yes, [#
|
||||
#include <linux/version.h>
|
||||
/* 2.1.128 or later */
|
||||
#if LINUX_VERSION_CODE >= 0x020180
|
||||
|
@ -159,15 +159,15 @@ fi
|
|||
|
||||
fi
|
||||
|
||||
dnl -----------------------
|
||||
dnl Set IPv6 related values
|
||||
dnl -----------------------
|
||||
# -----------------------
|
||||
# Set IPv6 related values
|
||||
# -----------------------
|
||||
LIBS="$LIB_IPV6 $LIBS"
|
||||
AC_SUBST(LIB_IPV6)
|
||||
|
||||
dnl -----------------------------------
|
||||
dnl check sin6_scope_id of sockaddr_in6
|
||||
dnl -----------------------------------
|
||||
# -----------------------------------
|
||||
# check sin6_scope_id of sockaddr_in6
|
||||
# -----------------------------------
|
||||
if test "$cv_ipv6" = yes; then
|
||||
AC_MSG_CHECKING(whether struct sockaddr_in6 has a sin6_scope_id field)
|
||||
AC_TRY_COMPILE([#include <sys/types.h>
|
||||
|
@ -178,9 +178,9 @@ if test "$cv_ipv6" = yes; then
|
|||
AC_MSG_RESULT(no))
|
||||
fi
|
||||
|
||||
dnl -----------------------------------
|
||||
dnl Check for New Socket API (RFC2292BIS)
|
||||
dnl -----------------------------------
|
||||
# -----------------------------------
|
||||
# Check for New Socket API (RFC2292BIS)
|
||||
# -----------------------------------
|
||||
AC_MSG_CHECKING(for rfc2292bis support)
|
||||
AC_TRY_COMPILE([#include <sys/types.h>
|
||||
#include <netinet/in.h>],
|
||||
|
@ -198,9 +198,9 @@ AC_TRY_COMPILE([#include <sys/types.h>
|
|||
AC_MSG_RESULT(yes)],
|
||||
[AC_MSG_RESULT(no)])
|
||||
|
||||
dnl This is taken from the ethereal configuration scripts.
|
||||
dnl We check whether user wants to build gtk-based programs
|
||||
dnl These need to be enabled explicitly
|
||||
# This is taken from the ethereal configuration scripts.
|
||||
# We check whether user wants to build gtk-based programs
|
||||
# These need to be enabled explicitly
|
||||
GTK_OK=yes
|
||||
|
||||
# GTK checks
|
||||
|
@ -236,12 +236,12 @@ AM_PATH_GLIB(1.2.0, CFLAGS="$CFLAGS $GLIB_CFLAGS", AC_MSG_ERROR(GLib distributio
|
|||
AC_SUBST(sctp_SUBDIRS)
|
||||
|
||||
|
||||
dnl Checks for library functions.
|
||||
# Checks for library functions.
|
||||
AC_CHECK_LIB(socket, socket)
|
||||
AC_CHECK_LIB(nsl, gethostbyname)
|
||||
AC_CHECK_LIB(sctp, sctp_eventloop)
|
||||
|
||||
dnl removed libefence....this should be used though, when we REALLY debug :-)
|
||||
# removed libefence....this should be used though, when we REALLY debug :-)
|
||||
AC_CHECK_LIB(efence, malloc)
|
||||
AC_CHECK_LIB(glib, g_main_add_poll)
|
||||
|
||||
|
@ -287,14 +287,14 @@ AC_CHECK_LIB(c, inet_ntop, [AC_DEFINE(HAVE_INET_NTOP)])
|
|||
AC_CHECK_LIB(c, inet_pton, [AC_DEFINE(HAVE_INET_PTON)])
|
||||
AC_CHECK_LIB(c, inet_aton, [AC_DEFINE(HAVE_INET_ATON)])
|
||||
|
||||
dnl Checks for library functions.
|
||||
# Checks for library functions.
|
||||
AC_FUNC_VPRINTF
|
||||
AC_FUNC_MEMCMP
|
||||
AC_CHECK_FUNCS(gettimeofday socket strerror poll getuid setuid geteuid random)
|
||||
AC_CHECK_FUNCS(getaddrinfo, [have_getaddrinfo=yes], [have_getaddrinfo=no])
|
||||
|
||||
|
||||
dnl checks for host/build/target system type
|
||||
# checks for host/build/target system type
|
||||
AC_CANONICAL_HOST
|
||||
case $host_os in
|
||||
bsdi*)
|
||||
|
@ -356,7 +356,7 @@ AC_SUBST(thread_LIBS)
|
|||
|
||||
|
||||
|
||||
dnl Checks for typedefs, structures, and compiler characteristics.
|
||||
# Checks for typedefs, structures, and compiler characteristics.
|
||||
AC_C_CONST
|
||||
AC_TYPE_SIZE_T
|
||||
AC_STRUCT_TM
|
||||
|
@ -379,5 +379,5 @@ AC_TRY_COMPILE([#include <sys/types.h>
|
|||
|
||||
|
||||
|
||||
dnl add here all your Makefiles. These will be created by configure
|
||||
# add here all your Makefiles. These will be created by configure
|
||||
AC_OUTPUT(Makefile sualibrary/Makefile sualibrary/docs/Makefile sualibrary/docs/en/Makefile sualibrary/sua/Makefile sualibrary/testup/Makefile )
|
||||
|
|
|
@ -1,290 +1,347 @@
|
|||
# KDE Config File
|
||||
[sualibrary/docs/en/index-6.html]
|
||||
install_location=
|
||||
[AUTHORS]
|
||||
dist=true
|
||||
install=false
|
||||
install_location=
|
||||
type=DATA
|
||||
[Workspace_1]
|
||||
openfiles=Untitled.h,Untitled.cpp,/home/p82609/siemens/sualibrary/sualibrary/sua/sua_datassoc.cpp,/home/p82609/siemens/sualibrary/sualibrary/sua/sua_distribution.cpp,
|
||||
show_outputview=true
|
||||
show_treeview=true
|
||||
header_file=Untitled.h
|
||||
cpp_file=/home/p82609/siemens/sualibrary/sualibrary/sua/sua_datassoc.cpp
|
||||
browser_file=file:/opt/kde/share/doc/HTML/default/kdevelop/reference/C/LIBRARIES/libraries.html
|
||||
|
||||
[COPYING]
|
||||
install_location=
|
||||
dist=true
|
||||
install=false
|
||||
install_location=
|
||||
type=DATA
|
||||
[sualibrary/sua/sua_adapt.cpp]
|
||||
install_location=
|
||||
dist=true
|
||||
install=false
|
||||
type=SOURCE
|
||||
[sualibrary/sua/sua_logging.cpp]
|
||||
install_location=
|
||||
dist=true
|
||||
install=false
|
||||
type=SOURCE
|
||||
[sualibrary/sua/sua_logging.h]
|
||||
install_location=
|
||||
dist=true
|
||||
install=false
|
||||
type=HEADER
|
||||
[sualibrary/sua/sua_database.h]
|
||||
install_location=
|
||||
dist=true
|
||||
install=false
|
||||
type=HEADER
|
||||
[Config for BinMakefileAm]
|
||||
ldflags=
|
||||
addcxxflags=
|
||||
ldadd=
|
||||
cxxflags=-O0 -g3 -Wall
|
||||
bin_program=sualibrary
|
||||
[sualibrary/sua/sua.h]
|
||||
install_location=
|
||||
dist=true
|
||||
install=false
|
||||
type=HEADER
|
||||
[sualibrary/sua/sua_tcb.h]
|
||||
install_location=
|
||||
dist=true
|
||||
install=false
|
||||
type=HEADER
|
||||
[sualibrary/testup/main.cpp]
|
||||
install_location=
|
||||
dist=true
|
||||
install=false
|
||||
type=SOURCE
|
||||
[README]
|
||||
install_location=
|
||||
dist=true
|
||||
install=false
|
||||
type=DATA
|
||||
[sualibrary/sua/sua_asp_mgnt.h]
|
||||
install_location=
|
||||
dist=true
|
||||
install=false
|
||||
type=HEADER
|
||||
[sualibrary/sua/sua_file.h]
|
||||
install_location=
|
||||
dist=true
|
||||
install=false
|
||||
type=HEADER
|
||||
[sualibrary/docs/en/index-1.html]
|
||||
install_location=
|
||||
dist=true
|
||||
install=false
|
||||
type=DATA
|
||||
[sualibrary.kdevprj]
|
||||
install_location=
|
||||
dist=true
|
||||
install=false
|
||||
type=DATA
|
||||
[LFV Groups]
|
||||
GNU=AUTHORS,COPYING,ChangeLog,INSTALL,README,TODO,NEWS,
|
||||
Others=*,
|
||||
groups=Headers,Sources,GNU,Others,
|
||||
Sources=*.cpp,*.c,*.cc,*.C,*.cxx,*.ec,*.ecpp,*.lxx,*.l++,*.ll,*.l,
|
||||
Headers=*.h,*.hh,*.hxx,*.hpp,*.H,
|
||||
[sualibrary/docs/en/index-2.html]
|
||||
install_location=
|
||||
dist=true
|
||||
install=false
|
||||
type=DATA
|
||||
[sualibrary/docs/en/Makefile.am]
|
||||
files=sualibrary/docs/en/index.html,sualibrary/docs/en/index-1.html,sualibrary/docs/en/index-2.html,sualibrary/docs/en/index-3.html,sualibrary/docs/en/index-4.html,sualibrary/docs/en/index-5.html,sualibrary/docs/en/index-6.html,
|
||||
sub_dirs=
|
||||
type=normal
|
||||
[sualibrary/sua/sua_sual.cpp]
|
||||
install_location=
|
||||
dist=true
|
||||
install=false
|
||||
type=SOURCE
|
||||
[sualibrary/docs/en/index.html]
|
||||
install_location=
|
||||
dist=true
|
||||
install=false
|
||||
type=DATA
|
||||
[sualibrary/docs/en/index-3.html]
|
||||
install_location=
|
||||
dist=true
|
||||
install=false
|
||||
type=DATA
|
||||
[sualibrary/sua/sua_asp_mgnt.cpp]
|
||||
install_location=
|
||||
dist=true
|
||||
install=false
|
||||
type=SOURCE
|
||||
[sualibrary/sua/sua_dataname.cpp]
|
||||
install_location=
|
||||
dist=true
|
||||
install=false
|
||||
type=SOURCE
|
||||
[sualibrary/sua/sua_file.cpp]
|
||||
install_location=
|
||||
dist=true
|
||||
install=false
|
||||
type=SOURCE
|
||||
[sualibrary/testup/assoc.sua]
|
||||
install_location=
|
||||
dist=false
|
||||
install=false
|
||||
type=DATA
|
||||
[sualibrary/docs/Makefile.am]
|
||||
sub_dirs=en,
|
||||
type=normal
|
||||
[sualibrary/docs/en/index-4.html]
|
||||
install_location=
|
||||
dist=true
|
||||
install=false
|
||||
type=DATA
|
||||
[sualibrary/sua/sua_distribution.h]
|
||||
install_location=
|
||||
dist=true
|
||||
install=false
|
||||
type=HEADER
|
||||
[sualibrary/sua/sua_syntax.cpp]
|
||||
install_location=
|
||||
dist=true
|
||||
install=false
|
||||
type=SOURCE
|
||||
[sualibrary/testup/testuser.h]
|
||||
install_location=
|
||||
dist=true
|
||||
install=false
|
||||
type=HEADER
|
||||
[sualibrary.lsm]
|
||||
install_location=
|
||||
dist=true
|
||||
install=false
|
||||
type=DATA
|
||||
[sualibrary/Makefile.am]
|
||||
files=
|
||||
sub_dirs=docs,sua,testup,
|
||||
type=prog_main
|
||||
[sualibrary/sua/sua_tcb.cpp]
|
||||
install_location=
|
||||
dist=true
|
||||
install=false
|
||||
type=SOURCE
|
||||
[sualibrary/docs/en/index-5.html]
|
||||
install_location=
|
||||
dist=true
|
||||
install=false
|
||||
type=DATA
|
||||
[sualibrary/sua/sua_datassoc.cpp]
|
||||
install_location=
|
||||
dist=true
|
||||
install=false
|
||||
type=SOURCE
|
||||
|
||||
[ChangeLog]
|
||||
install_location=
|
||||
dist=true
|
||||
install=false
|
||||
install_location=
|
||||
type=DATA
|
||||
[sualibrary/sua/sua_cl.cpp]
|
||||
install_location=
|
||||
dist=true
|
||||
install=false
|
||||
type=SOURCE
|
||||
|
||||
[Config for BinMakefileAm]
|
||||
addcxxflags=
|
||||
bin_program=sualibrary
|
||||
cxxflags=-O0 -g3 -Wall
|
||||
ldadd=
|
||||
ldflags=
|
||||
|
||||
[General]
|
||||
make_options=-j1
|
||||
makefiles=Makefile.am,sualibrary/Makefile.am,sualibrary/docs/Makefile.am,sualibrary/docs/en/Makefile.am,sualibrary/sua/Makefile.am,sualibrary/testup/Makefile.am,
|
||||
version_control=None
|
||||
author=Lode Coene
|
||||
project_type=normal_cpp
|
||||
sub_dir=sualibrary/
|
||||
lfv_open_groups=
|
||||
workspace=1
|
||||
version=0.1
|
||||
project_name=Sualibrary
|
||||
AMChanged=false
|
||||
sgml_file=/home/p82609/sualibrary/sualibrary/docs/en/index.sgml
|
||||
short_info=,
|
||||
author=Lode Coene
|
||||
configure_args=
|
||||
email=lode.coene@siemens.atea.be
|
||||
kdevprj_version=1.2
|
||||
configure_args=
|
||||
lfv_open_groups=
|
||||
make_options=-j1
|
||||
makefiles=Makefile.am,sualibrary/Makefile.am,sualibrary/docs/Makefile.am,sualibrary/docs/en/Makefile.am,sualibrary/sua/Makefile.am,sualibrary/testup/Makefile.am,
|
||||
modifyMakefiles=true
|
||||
[sualibrary/sua/Makefile.am]
|
||||
files=sualibrary/sua/sua.h,sualibrary/sua/sua_adapt.cpp,sualibrary/sua/sua_adapt.h,sualibrary/sua/sua_asp_mgnt.cpp,sualibrary/sua/sua_asp_mgnt.h,sualibrary/sua/sua_cl.cpp,sualibrary/sua/sua_cl.h,sualibrary/sua/sua_datassoc.cpp,sualibrary/sua/sua_co.cpp,sualibrary/sua/sua_co.h,sualibrary/sua/sua_database.cpp,sualibrary/sua/sua_database.h,sualibrary/sua/sua_dataname.cpp,sualibrary/sua/sua_debug.h,sualibrary/sua/sua_distribution.cpp,sualibrary/sua/sua_distribution.h,sualibrary/sua/sua_file.cpp,sualibrary/sua/sua_file.h,sualibrary/sua/sua_logging.cpp,sualibrary/sua/sua_logging.h,sualibrary/sua/sua_sual.cpp,sualibrary/sua/sua_sual.h,sualibrary/sua/sua_syntax.cpp,sualibrary/sua/sua_syntax.h,sualibrary/sua/sua_tcb.cpp,sualibrary/sua/sua_tcb.h,
|
||||
type=static_library
|
||||
[TODO]
|
||||
install_location=
|
||||
dist=true
|
||||
install=false
|
||||
type=DATA
|
||||
project_name=Sualibrary
|
||||
project_type=normal_cpp
|
||||
sgml_file=/home/p82609/sualibrary/sualibrary/docs/en/index.sgml
|
||||
short_info=,
|
||||
sub_dir=sualibrary/
|
||||
version=0.1
|
||||
version_control=None
|
||||
workspace=1
|
||||
|
||||
[INSTALL]
|
||||
install_location=
|
||||
dist=true
|
||||
install=false
|
||||
install_location=
|
||||
type=DATA
|
||||
[sualibrary/sua/sua_syntax.h]
|
||||
install_location=
|
||||
dist=true
|
||||
install=false
|
||||
type=HEADER
|
||||
[sualibrary/testup/local.sua]
|
||||
install_location=local.sua
|
||||
dist=false
|
||||
install=false
|
||||
type=DATA
|
||||
[sualibrary/sua/sua_co.h]
|
||||
install_location=
|
||||
dist=true
|
||||
install=false
|
||||
type=HEADER
|
||||
[sualibrary/sua/sua_adapt.h]
|
||||
install_location=
|
||||
dist=true
|
||||
install=false
|
||||
type=HEADER
|
||||
[sualibrary/sua/sua_co.cpp]
|
||||
install_location=
|
||||
dist=true
|
||||
install=false
|
||||
type=SOURCE
|
||||
[sualibrary/sua/sua_database.cpp]
|
||||
install_location=
|
||||
dist=true
|
||||
install=false
|
||||
type=SOURCE
|
||||
[sualibrary/testup/testuser.cpp]
|
||||
install_location=
|
||||
dist=true
|
||||
install=false
|
||||
type=SOURCE
|
||||
|
||||
[LFV Groups]
|
||||
GNU=AUTHORS,COPYING,ChangeLog,INSTALL,README,TODO,NEWS,
|
||||
Headers=*.h,*.hh,*.hxx,*.hpp,*.H,
|
||||
Others=*,
|
||||
Sources=*.cpp,*.c,*.cc,*.C,*.cxx,*.ec,*.ecpp,*.lxx,*.l++,*.ll,*.l,
|
||||
groups=Headers,Sources,GNU,Others,
|
||||
|
||||
[Makefile.am]
|
||||
files=sualibrary.kdevprj,AUTHORS,COPYING,ChangeLog,INSTALL,README,TODO,sualibrary.lsm,
|
||||
sub_dirs=sualibrary,
|
||||
type=normal
|
||||
[sualibrary/sua/sua_cl.h]
|
||||
install_location=
|
||||
|
||||
[README]
|
||||
dist=true
|
||||
install=false
|
||||
type=HEADER
|
||||
[sualibrary/sua/sua_distribution.cpp]
|
||||
install_location=
|
||||
dist=true
|
||||
install=false
|
||||
type=SOURCE
|
||||
[sualibrary/sua/sua_sual.h]
|
||||
install_location=
|
||||
dist=true
|
||||
install=false
|
||||
type=HEADER
|
||||
[AUTHORS]
|
||||
install_location=
|
||||
dist=true
|
||||
install=false
|
||||
type=DATA
|
||||
[sualibrary/testup/Makefile.am]
|
||||
files=sualibrary/testup/main.cpp,sualibrary/testup/testuser.cpp,sualibrary/testup/testuser.h,sualibrary/testup/local.sua,sualibrary/testup/assoc.sua,
|
||||
type=static_library
|
||||
sub_dirs=
|
||||
[sualibrary/sua/sua_debug.h]
|
||||
install_location=
|
||||
|
||||
[TODO]
|
||||
dist=true
|
||||
install=false
|
||||
install_location=
|
||||
type=DATA
|
||||
|
||||
[Workspace_1]
|
||||
browser_file=file:/opt/kde/share/doc/HTML/default/kdevelop/reference/C/LIBRARIES/libraries.html
|
||||
cpp_file=/home/p82609/sualibrary/sualibrary/testup/testuser.cpp
|
||||
header_file=/home/p82609/sualibrary/sualibrary/testup/testuser.h
|
||||
openfiles=Untitled.h,Untitled.cpp,/home/p82609/sualibrary/sualibrary/testup/main.cpp,/home/p82609/sualibrary/sualibrary/testup/testuser.cpp,/home/p82609/sualibrary/sualibrary/testup/testuser.h,
|
||||
show_outputview=true
|
||||
show_treeview=true
|
||||
|
||||
[sualibrary.kdevprj]
|
||||
dist=true
|
||||
install=false
|
||||
install_location=
|
||||
type=DATA
|
||||
|
||||
[sualibrary.lsm]
|
||||
dist=true
|
||||
install=false
|
||||
install_location=
|
||||
type=DATA
|
||||
|
||||
[sualibrary/Makefile.am]
|
||||
files=
|
||||
sub_dirs=docs,sua,testup,
|
||||
type=prog_main
|
||||
|
||||
[sualibrary/docs/Makefile.am]
|
||||
sub_dirs=en,
|
||||
type=normal
|
||||
|
||||
[sualibrary/docs/en/Makefile.am]
|
||||
files=sualibrary/docs/en/index.html,sualibrary/docs/en/index-1.html,sualibrary/docs/en/index-2.html,sualibrary/docs/en/index-3.html,sualibrary/docs/en/index-4.html,sualibrary/docs/en/index-5.html,sualibrary/docs/en/index-6.html,
|
||||
sub_dirs=
|
||||
type=normal
|
||||
|
||||
[sualibrary/docs/en/index-1.html]
|
||||
dist=true
|
||||
install=false
|
||||
install_location=
|
||||
type=DATA
|
||||
|
||||
[sualibrary/docs/en/index-2.html]
|
||||
dist=true
|
||||
install=false
|
||||
install_location=
|
||||
type=DATA
|
||||
|
||||
[sualibrary/docs/en/index-3.html]
|
||||
dist=true
|
||||
install=false
|
||||
install_location=
|
||||
type=DATA
|
||||
|
||||
[sualibrary/docs/en/index-4.html]
|
||||
dist=true
|
||||
install=false
|
||||
install_location=
|
||||
type=DATA
|
||||
|
||||
[sualibrary/docs/en/index-5.html]
|
||||
dist=true
|
||||
install=false
|
||||
install_location=
|
||||
type=DATA
|
||||
|
||||
[sualibrary/docs/en/index-6.html]
|
||||
dist=true
|
||||
install=false
|
||||
install_location=
|
||||
type=DATA
|
||||
|
||||
[sualibrary/docs/en/index.html]
|
||||
dist=true
|
||||
install=false
|
||||
install_location=
|
||||
type=DATA
|
||||
|
||||
[sualibrary/sua/Makefile.am]
|
||||
files=sualibrary/sua/sua.h,sualibrary/sua/sua_adapt.cpp,sualibrary/sua/sua_adapt.h,sualibrary/sua/sua_asp_mgnt.cpp,sualibrary/sua/sua_asp_mgnt.h,sualibrary/sua/sua_cl.cpp,sualibrary/sua/sua_cl.h,sualibrary/sua/sua_datassoc.cpp,sualibrary/sua/sua_co.cpp,sualibrary/sua/sua_co.h,sualibrary/sua/sua_database.cpp,sualibrary/sua/sua_database.h,sualibrary/sua/sua_dataname.cpp,sualibrary/sua/sua_debug.h,sualibrary/sua/sua_distribution.cpp,sualibrary/sua/sua_distribution.h,sualibrary/sua/sua_file.cpp,sualibrary/sua/sua_file.h,sualibrary/sua/sua_logging.cpp,sualibrary/sua/sua_logging.h,sualibrary/sua/sua_sual.cpp,sualibrary/sua/sua_sual.h,sualibrary/sua/sua_syntax.cpp,sualibrary/sua/sua_syntax.h,sualibrary/sua/sua_tcb.cpp,sualibrary/sua/sua_tcb.h,sualibrary/sua/sua_snm_mgnt.cpp,sualibrary/sua/sua_snm_mgnt.h
|
||||
sharedlib_LDFLAGS=
|
||||
sharedlib_rootname=
|
||||
sub_dirs=
|
||||
type=static_library
|
||||
|
||||
[sualibrary/sua/sua.h]
|
||||
dist=true
|
||||
install=false
|
||||
install_location=
|
||||
type=HEADER
|
||||
|
||||
[sualibrary/sua/sua_adapt.cpp]
|
||||
dist=true
|
||||
install=false
|
||||
install_location=
|
||||
type=SOURCE
|
||||
|
||||
[sualibrary/sua/sua_adapt.h]
|
||||
dist=true
|
||||
install=false
|
||||
install_location=
|
||||
type=HEADER
|
||||
|
||||
[sualibrary/sua/sua_asp_mgnt.cpp]
|
||||
dist=true
|
||||
install=false
|
||||
install_location=
|
||||
type=SOURCE
|
||||
|
||||
[sualibrary/sua/sua_asp_mgnt.h]
|
||||
dist=true
|
||||
install=false
|
||||
install_location=
|
||||
type=HEADER
|
||||
|
||||
[sualibrary/sua/sua_cl.cpp]
|
||||
dist=true
|
||||
install=false
|
||||
install_location=
|
||||
type=SOURCE
|
||||
|
||||
[sualibrary/sua/sua_cl.h]
|
||||
dist=true
|
||||
install=false
|
||||
install_location=
|
||||
type=HEADER
|
||||
|
||||
[sualibrary/sua/sua_co.cpp]
|
||||
dist=true
|
||||
install=false
|
||||
install_location=
|
||||
type=SOURCE
|
||||
|
||||
[sualibrary/sua/sua_co.h]
|
||||
dist=true
|
||||
install=false
|
||||
install_location=
|
||||
type=HEADER
|
||||
|
||||
[sualibrary/sua/sua_database.cpp]
|
||||
dist=true
|
||||
install=false
|
||||
install_location=
|
||||
type=SOURCE
|
||||
|
||||
[sualibrary/sua/sua_database.h]
|
||||
dist=true
|
||||
install=false
|
||||
install_location=
|
||||
type=HEADER
|
||||
|
||||
[sualibrary/sua/sua_dataname.cpp]
|
||||
dist=true
|
||||
install=false
|
||||
install_location=
|
||||
type=SOURCE
|
||||
|
||||
[sualibrary/sua/sua_datassoc.cpp]
|
||||
dist=true
|
||||
install=false
|
||||
install_location=
|
||||
type=SOURCE
|
||||
|
||||
[sualibrary/sua/sua_debug.h]
|
||||
dist=true
|
||||
install=false
|
||||
install_location=
|
||||
type=HEADER
|
||||
|
||||
[sualibrary/sua/sua_distribution.cpp]
|
||||
dist=true
|
||||
install=false
|
||||
install_location=
|
||||
type=SOURCE
|
||||
|
||||
[sualibrary/sua/sua_distribution.h]
|
||||
dist=true
|
||||
install=false
|
||||
install_location=
|
||||
type=HEADER
|
||||
|
||||
[sualibrary/sua/sua_file.cpp]
|
||||
dist=true
|
||||
install=false
|
||||
install_location=
|
||||
type=SOURCE
|
||||
|
||||
[sualibrary/sua/sua_file.h]
|
||||
dist=true
|
||||
install=false
|
||||
install_location=
|
||||
type=HEADER
|
||||
|
||||
[sualibrary/sua/sua_logging.cpp]
|
||||
dist=true
|
||||
install=false
|
||||
install_location=
|
||||
type=SOURCE
|
||||
|
||||
[sualibrary/sua/sua_logging.h]
|
||||
dist=true
|
||||
install=false
|
||||
install_location=
|
||||
type=HEADER
|
||||
|
||||
[sualibrary/sua/sua_snm_mgnt.cpp]
|
||||
dist=true
|
||||
install=false
|
||||
install_location=
|
||||
type=SOURCE
|
||||
|
||||
[sualibrary/sua/sua_snm_mgnt.h]
|
||||
dist=true
|
||||
install=false
|
||||
install_location=
|
||||
type=HEADER
|
||||
|
||||
[sualibrary/sua/sua_sual.cpp]
|
||||
dist=true
|
||||
install=false
|
||||
install_location=
|
||||
type=SOURCE
|
||||
|
||||
[sualibrary/sua/sua_sual.h]
|
||||
dist=true
|
||||
install=false
|
||||
install_location=
|
||||
type=HEADER
|
||||
|
||||
[sualibrary/sua/sua_syntax.cpp]
|
||||
dist=true
|
||||
install=false
|
||||
install_location=
|
||||
type=SOURCE
|
||||
|
||||
[sualibrary/sua/sua_syntax.h]
|
||||
dist=true
|
||||
install=false
|
||||
install_location=
|
||||
type=HEADER
|
||||
|
||||
[sualibrary/sua/sua_tcb.cpp]
|
||||
dist=true
|
||||
install=false
|
||||
install_location=
|
||||
type=SOURCE
|
||||
|
||||
[sualibrary/sua/sua_tcb.h]
|
||||
dist=true
|
||||
install=false
|
||||
install_location=
|
||||
type=HEADER
|
||||
|
||||
[sualibrary/testup/Makefile.am]
|
||||
files=sualibrary/testup/main.cpp,sualibrary/testup/testuser.cpp,sualibrary/testup/testuser.h,
|
||||
sub_dirs=
|
||||
type=static_library
|
||||
|
||||
[sualibrary/testup/main.cpp]
|
||||
dist=true
|
||||
install=false
|
||||
install_location=
|
||||
type=SOURCE
|
||||
|
||||
[sualibrary/testup/testuser.cpp]
|
||||
dist=true
|
||||
install=false
|
||||
install_location=
|
||||
type=SOURCE
|
||||
|
||||
[sualibrary/testup/testuser.h]
|
||||
dist=true
|
||||
install=false
|
||||
install_location=
|
||||
type=HEADER
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
Begin3
|
||||
Title: Sualibrary
|
||||
Version: 0.1
|
||||
Version: 0.1.2
|
||||
Entered-date:
|
||||
Description:
|
||||
Keywords:
|
||||
|
@ -9,6 +9,6 @@ Maintained-by: Lode Coene <lode.coene@siemens.atea.be>
|
|||
Primary-site:
|
||||
Home-page: http://www.sctp.be/sua
|
||||
Original-site:
|
||||
Platforms: Linux and other Unices
|
||||
Platforms: Linux, FreeBSD, Mac OSX and other Unixes
|
||||
Copying-policy: GNU Public License
|
||||
End
|
||||
|
|
|
@ -1,9 +1,10 @@
|
|||
####### kdevelop will overwrite this part!!! (begin)##########
|
||||
|
||||
|
||||
SUBDIRS = docs sua testup
|
||||
|
||||
####### kdevelop will overwrite this part!!! (end)############
|
||||
|
||||
SUBDIRS = docs sua testup
|
||||
|
||||
|
||||
|
||||
|
|
|
@ -1,10 +1,10 @@
|
|||
####### kdevelop will overwrite this part!!! (begin)##########
|
||||
noinst_LIBRARIES = libsua.a
|
||||
|
||||
libsua_a_SOURCES = sua_tcb.cpp sua_syntax.cpp sua_sual.cpp sua_logging.cpp sua_file.cpp sua_distribution.cpp sua_dataname.cpp sua_database.cpp sua_co.cpp sua_datassoc.cpp sua_cl.cpp sua_asp_mgnt.cpp sua_adapt.cpp
|
||||
libsua_a_SOURCES = sua_snm_mgnt.cpp sua_tcb.cpp sua_syntax.cpp sua_sual.cpp sua_logging.cpp sua_file.cpp sua_distribution.cpp sua_dataname.cpp sua_database.cpp sua_co.cpp sua_datassoc.cpp sua_cl.cpp sua_asp_mgnt.cpp sua_adapt.cpp
|
||||
|
||||
|
||||
EXTRA_DIST = sua.h sua_adapt.cpp sua_adapt.h sua_asp_mgnt.cpp sua_asp_mgnt.h sua_cl.cpp sua_cl.h sua_datassoc.cpp sua_co.cpp sua_co.h sua_database.cpp sua_database.h sua_dataname.cpp sua_debug.h sua_distribution.cpp sua_distribution.h sua_file.cpp sua_file.h sua_logging.cpp sua_logging.h sua_sual.cpp sua_sual.h sua_syntax.cpp sua_syntax.h sua_tcb.cpp sua_tcb.h
|
||||
EXTRA_DIST = sua.h sua_adapt.cpp sua_adapt.h sua_asp_mgnt.cpp sua_asp_mgnt.h sua_cl.cpp sua_cl.h sua_datassoc.cpp sua_co.cpp sua_co.h sua_database.cpp sua_database.h sua_dataname.cpp sua_debug.h sua_distribution.cpp sua_distribution.h sua_file.cpp sua_file.h sua_logging.cpp sua_logging.h sua_sual.cpp sua_sual.h sua_syntax.cpp sua_syntax.h sua_tcb.cpp sua_tcb.h sua_snm_mgnt.cpp sua_snm_mgnt.h
|
||||
|
||||
####### kdevelop will overwrite this part!!! (end)############
|
||||
SOMAJOR = 1
|
||||
|
@ -21,10 +21,16 @@ INCLUDES = -I/usr/local/include
|
|||
|
||||
#build a libtool library for installation in libdir
|
||||
lib_LTLIBRARIES = libsua.la
|
||||
libsua_la_SOURCES = sua_tcb.cpp sua_syntax.cpp sua_sual.cpp sua_logging.cpp sua_file.cpp sua_distribution.cpp sua_dataname.cpp sua_database.cpp sua_co.cpp sua_datassoc.cpp sua_cl.cpp sua_asp_mgnt.cpp sua_adapt.cpp
|
||||
libsua_la_SOURCES = sua_tcb.cpp sua_syntax.cpp sua_sual.cpp sua_logging.cpp sua_file.cpp sua_distribution.cpp sua_dataname.cpp sua_database.cpp sua_co.cpp sua_datassoc.cpp sua_cl.cpp sua_asp_mgnt.cpp sua_adapt.cpp sua_snm_mgnt.cpp
|
||||
|
||||
|
||||
libsua_la_LDFLAGS = -no-undefined -version-info $(SOMAJOR):$(SOMINOR):$(SOSUBMINOR) $(LDFLAGS)
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
|
|
@ -15,9 +15,9 @@
|
|||
* *
|
||||
***************************************************************************/
|
||||
/*
|
||||
* $Id: sua.h,v 1.3 2002/02/15 16:19:46 p82609 Exp $
|
||||
* $Id: sua.h,v 1.8 2002/11/12 11:02:49 p82609 Exp $
|
||||
*
|
||||
* SUA implementation according to SUA draft issue 6.
|
||||
* SUA implementation according to SUA draft issue 13.
|
||||
*
|
||||
* Author(s): Lode Coene
|
||||
*
|
||||
|
@ -102,6 +102,9 @@
|
|||
|
||||
#include <netinet/in.h>
|
||||
|
||||
#ifdef DARWIN
|
||||
#include <stdint.h>
|
||||
#endif
|
||||
|
||||
/* turn on Posix 1g for compatible cmsg structure */
|
||||
#ifdef USE_RFC2292BIS
|
||||
|
@ -120,6 +123,8 @@
|
|||
|
||||
#include "sctp.h" /* SCTP library */
|
||||
|
||||
using namespace std;
|
||||
|
||||
#define SUA_PORT 14001
|
||||
#define SUA_PPI 4
|
||||
#define IPPROTO_SCTP 132
|
||||
|
@ -128,6 +133,11 @@
|
|||
|
||||
/*#define HAVE_UNISTD_H TRUE */
|
||||
|
||||
#ifndef FALSE
|
||||
#define FALSE (0)
|
||||
#define TRUE (!FALSE)
|
||||
#endif
|
||||
|
||||
#define N_UNITDATA 1
|
||||
#define N_NOTICE 2
|
||||
#define N_CONNECT_REQ 10
|
||||
|
@ -140,12 +150,24 @@
|
|||
#define N_RELEASE_REQ 30
|
||||
#define N_RELEASE_CONF 31
|
||||
|
||||
#define SUA_UDTS_NO_TRANSLATION_FOR_NATURE_OF_ADDRES 0x00
|
||||
#define SUA_UDTS_NO_TRANSLATION_FOR_SPECIFIC_ADDRES 0x01
|
||||
#define SUA_UDTS_SUBSYTEM_CONGESTION 0x02
|
||||
#define SUA_UDTS_SUBSYTEM_FAILURE 0x03
|
||||
#define SUA_UDTS_UNEQUIPPED_USER 0x04
|
||||
#define SUA_UDTS_MTP_FAILURE 0x05
|
||||
#define SUA_UDTS_NETWORK_CONGESTION 0x06
|
||||
#define SUA_UDTS_UNQUALIFIED 0x07
|
||||
#define SUA_UDTS_ERROR_IN_MSG_TRANSPORT 0x08
|
||||
#define SUA_UDTS_ERROR_IN_LOCAL_PROCESSING 0x09
|
||||
#define SUA_UDTS_DESTINATION_REASSEMBLY_FAILURE 0x0A
|
||||
#define SUA_UDTS_SCCP_FAILURE 0x0B
|
||||
#define SUA_UDTS_HOP_COUNTER_VIOLATION 0x0C
|
||||
#define SUA_UDTS_SEGMENTATION_NOT_SUPPORTED 0x0D
|
||||
#define SUA_UDTS_SEGMENTATION_FAILURE 0x0E
|
||||
|
||||
typedef unsigned char boolean;
|
||||
|
||||
#define FALSE (0)
|
||||
#define TRUE (!FALSE)
|
||||
|
||||
|
||||
#define OK 0
|
||||
#define PROTOCOL_CLASS_NOT_SPECIFIED -10
|
||||
#define INVALID_CLG_ADDRESS -20
|
||||
|
@ -214,7 +236,7 @@ typedef enum { no_name_present,
|
|||
} name_gt_set;
|
||||
|
||||
typedef enum { no_sap_present,
|
||||
ssn_present,
|
||||
ssn_present,
|
||||
portnumber_presentr
|
||||
} application_SAP_set;
|
||||
|
||||
|
@ -238,7 +260,13 @@ typedef struct {
|
|||
|
||||
typedef char hostname_str[255];
|
||||
|
||||
typedef char global_title_str[255];
|
||||
typedef struct {
|
||||
short Translation_Type;
|
||||
short Numbering_Plan;
|
||||
short Nature_of_Address;
|
||||
short nr_of_digits;
|
||||
char digits[255];
|
||||
} global_title_str;
|
||||
|
||||
typedef union {
|
||||
global_title_str GT;
|
||||
|
@ -264,7 +292,7 @@ typedef struct {
|
|||
|
||||
typedef enum { class0, // connectionless transport, non-sequenced
|
||||
class1, // connectionless transport, sequenced
|
||||
class2, // connectionoriented
|
||||
class2, // connectionoriented
|
||||
class3 // connectionoriented with flow control
|
||||
} protocol_class_set;
|
||||
|
||||
|
@ -279,26 +307,26 @@ typedef struct {
|
|||
|
||||
typedef struct {
|
||||
void (*ulp_ClDataIndNotif) ( unsigned int local_sua_Id,
|
||||
unsigned int primitive,
|
||||
unsigned int datalen
|
||||
);
|
||||
unsigned int primitive,
|
||||
unsigned int datalen
|
||||
);
|
||||
void (*ulp_ConnIndNotif) ( unsigned int local_sua_id,
|
||||
unsigned int local_sua_ref,
|
||||
unsigned int datalen
|
||||
);
|
||||
unsigned int local_sua_ref,
|
||||
unsigned int datalen
|
||||
);
|
||||
void (*ulp_ConnConfIndNotif) ( unsigned int local_sua_id,
|
||||
unsigned int local_sua_ref,
|
||||
unsigned int datalen
|
||||
);
|
||||
unsigned int local_sua_ref,
|
||||
unsigned int datalen
|
||||
);
|
||||
void (*ulp_ConnDataIndNotif) ( unsigned int local_sua_id,
|
||||
unsigned int local_sua_ref,
|
||||
unsigned int datalen
|
||||
);
|
||||
unsigned int local_sua_ref,
|
||||
unsigned int datalen
|
||||
);
|
||||
void (*ulp_DisConnIndNotif) ( unsigned int local_sua_id,
|
||||
unsigned int local_sua_ref,
|
||||
unsigned int local_sua_ref,
|
||||
unsigned int reason,
|
||||
unsigned int datalen
|
||||
);
|
||||
unsigned int datalen
|
||||
);
|
||||
} Sua_ULP_CallBacks;
|
||||
|
||||
|
||||
|
@ -317,9 +345,9 @@ unsigned int sua_read_config_file
|
|||
#define SUA_REG_NO_ERROR 0
|
||||
|
||||
unsigned int sua_registerInstance
|
||||
( short local_ssn,
|
||||
Sua_ULP_CallBacks ulp_callback
|
||||
);
|
||||
( short local_ssn,
|
||||
Sua_ULP_CallBacks ulp_callback
|
||||
);
|
||||
|
||||
|
||||
#define SUA_ASS_NO_ERROR 0
|
||||
|
@ -337,12 +365,14 @@ typedef struct {
|
|||
#define SUA_PATH_NO_DEST_ADDR_PRESENT 1
|
||||
|
||||
unsigned int sua_getPath( unsigned int assoc_id,
|
||||
sua_Path_str &pathinfo
|
||||
);
|
||||
sua_Path_str &pathinfo
|
||||
);
|
||||
|
||||
#define SUA_TERM_NO_ERROR 0
|
||||
#define SUA_TERM_NO_DEST_ADDR_PRESENT 1
|
||||
|
||||
|
||||
unsigned int sua_shutdown();
|
||||
unsigned int sua_terminate();
|
||||
|
||||
|
||||
|
|
|
@ -15,9 +15,9 @@
|
|||
* *
|
||||
***************************************************************************/
|
||||
/*
|
||||
* $Id: sua_adapt.cpp,v 1.2 2002/02/15 16:19:46 p82609 Exp $
|
||||
* $Id: sua_adapt.cpp,v 1.5 2002/11/12 11:02:49 p82609 Exp $
|
||||
*
|
||||
* SUA implementation according to SUA draft issue 6.
|
||||
* SUA implementation according to SUA draft issue 13.
|
||||
*
|
||||
* Author(s): Lode Coene
|
||||
*
|
||||
|
@ -87,25 +87,31 @@
|
|||
#include <arpa/inet.h>
|
||||
|
||||
using namespace std;
|
||||
/* definition of SUA local object and of remote object */
|
||||
db_Sua_LocalList local_sua;
|
||||
db_Sua_RemoteList remote_sua;
|
||||
db_Sua_AssociationList Assoc_sua;
|
||||
db_Sua_NameList NameDB_sua;
|
||||
db_Sua_ASList ApplicServ_sua;
|
||||
|
||||
/* definition of SUA database objects */
|
||||
db_Sua_DatabaseList sua;
|
||||
|
||||
/***********************************************************************/
|
||||
/* sua_initialisation */
|
||||
/***********************************************************************/
|
||||
void sua_initialisation()
|
||||
{
|
||||
int res;
|
||||
int res;
|
||||
SCTP_LibraryParameters params;
|
||||
|
||||
cout << "Initialising SCTP & SUA\n ";
|
||||
res = sctp_initLibrary();
|
||||
|
||||
/* set checksum to CRC32C */
|
||||
sctp_getLibraryParameters(¶ms);
|
||||
params.checksumAlgorithm = SCTP_CHECKSUM_ALGORITHM_CRC32C;
|
||||
params.supportPRSCTP = 0;
|
||||
sctp_setLibraryParameters(¶ms);
|
||||
|
||||
init_logging_file();
|
||||
local_sua.initialize();
|
||||
remote_sua.initialize();
|
||||
Assoc_sua.initialize();
|
||||
sua.local_sua.initialize();
|
||||
sua.remote_sua.initialize();
|
||||
sua.AssocDB.initialize();
|
||||
cout << "Finished initialising SUA data\n ";
|
||||
|
||||
} /* end of sua_initialisation */
|
||||
|
@ -119,12 +125,13 @@ unsigned int sua_read_config_file( char *pConfFile)
|
|||
string sua_filename;
|
||||
sua_filename = pConfFile;
|
||||
result = read_sua_file( sua_filename,
|
||||
local_sua,
|
||||
remote_sua,
|
||||
Assoc_sua,
|
||||
NameDB_sua,
|
||||
ApplicServ_sua
|
||||
sua.local_sua,
|
||||
sua.remote_sua,
|
||||
sua.AssocDB,
|
||||
sua.NameDB,
|
||||
sua.ApplicServ
|
||||
);
|
||||
|
||||
return(result);
|
||||
}
|
||||
|
||||
|
@ -146,12 +153,12 @@ unsigned int sua_registerInstance ( short local_ssn,
|
|||
SCTPCallbackFunctions.communicationErrorNotif = &sctp_CommunicationErrorNotif;
|
||||
SCTPCallbackFunctions.restartNotif = &sctp_RestartNotif;
|
||||
SCTPCallbackFunctions.shutdownCompleteNotif = &sctp_ShutDownCompleteNotif;
|
||||
|
||||
result = Assoc_sua.register_instance ( SCTPCallbackFunctions,
|
||||
ulp_callback,
|
||||
local_sua
|
||||
);
|
||||
|
||||
|
||||
result = sua.AssocDB.register_instance ( SCTPCallbackFunctions,
|
||||
ulp_callback,
|
||||
sua.local_sua
|
||||
);
|
||||
|
||||
return(result);
|
||||
}
|
||||
|
||||
|
@ -162,9 +169,9 @@ unsigned int sua_registerInstance ( short local_ssn,
|
|||
unsigned int sua_associate ( )
|
||||
{
|
||||
unsigned int result = SUA_ASS_NO_ERROR;
|
||||
result = Assoc_sua.associate_instance( local_sua,
|
||||
remote_sua
|
||||
);
|
||||
result = sua.AssocDB.associate_instance( sua.local_sua,
|
||||
sua.remote_sua
|
||||
);
|
||||
return(result);
|
||||
|
||||
}
|
||||
|
@ -178,31 +185,75 @@ unsigned int sua_getPath( unsigned int assoc_id,
|
|||
)
|
||||
{
|
||||
unsigned int result = SUA_PATH_NO_ERROR;
|
||||
|
||||
if ( Assoc_sua.instance[assoc_id].Dest.nr_of_addrs > 0)
|
||||
|
||||
if ( sua.AssocDB.instance[assoc_id].Dest.nr_of_addrs > 0)
|
||||
{
|
||||
/*pathinfo.remote_addr.*/
|
||||
pathinfo.remote_addr.pc.ipvx = Assoc_sua.instance[assoc_id].Dest.addrs[0];
|
||||
/*pathinfo.remote_addr.pc.ss7 = Assoc_sua.instance[assoc_id].Dest.pc;*/
|
||||
pathinfo.remote_addr.ssn = remote_sua.instance[Assoc_sua.instance[assoc_id].remote_sua_id].ssn.ssn;
|
||||
|
||||
pathinfo.ASP_status = Assoc_sua.instance[assoc_id].asp.status;
|
||||
|
||||
pathinfo.remote_addr.pc.ipvx = sua.AssocDB.instance[assoc_id].Dest.addrs[0];
|
||||
|
||||
/*memcpy( pathinfo.remote_addr.pc.ipvx.ch, sua.AssocDB.instance[assoc_id].Dest.addrs[0].ch, 24);*/
|
||||
|
||||
pathinfo.remote_addr.pc.ss7 = sua.AssocDB.instance[assoc_id].Dest.pc;
|
||||
pathinfo.remote_addr.ssn = sua.remote_sua.instance[sua.AssocDB.instance[assoc_id].remote_sua_id].ssn.ssn;
|
||||
|
||||
pathinfo.ASP_status = sua.AssocDB.instance[assoc_id].asp.status;
|
||||
|
||||
#ifdef DEBUG
|
||||
//cout << "remote ssn = " << pathinfo.remote_addr.ssn << "\n";
|
||||
//cout << "remote sua_id = " << Assoc_sua.instance[assoc_id].remote_sua_id << "\n";
|
||||
//cout << "remote sua_id = " << sua.AssocDB.instance[assoc_id].remote_sua_id << "\n";
|
||||
#endif
|
||||
}
|
||||
else
|
||||
result = SUA_PATH_NO_DEST_ADDR_PRESENT;
|
||||
pathinfo.local_addr.pc.ipvx = Assoc_sua.instance[assoc_id].Source.addrs[0];
|
||||
pathinfo.local_addr.pc.ss7 = Assoc_sua.instance[assoc_id].Source.pc;
|
||||
pathinfo.local_addr.ssn = local_sua.instance[Assoc_sua.instance[assoc_id].local_sua_id].ssn.ssn;
|
||||
|
||||
pathinfo.local_addr.pc.ipvx.ch = sua.AssocDB.instance[assoc_id].Source.addrs[0].ch;
|
||||
|
||||
/*memcpy( pathinfo.local_addr.pc.ipvx.ch, sua.AssocDB.instance[assoc_id].Source.addrs[0].ch,24);*/
|
||||
|
||||
pathinfo.local_addr.pc.ss7 = sua.AssocDB.instance[assoc_id].Source.pc;
|
||||
pathinfo.local_addr.ssn = sua.local_sua.instance[sua.AssocDB.instance[assoc_id].local_sua_id].ssn.ssn;
|
||||
|
||||
return (result);
|
||||
|
||||
}
|
||||
|
||||
/***********************************************************************/
|
||||
/* get destination pointcode address */
|
||||
/***********************************************************************/
|
||||
pointcode_str get_destpc_addr( unsigned int sua_id)
|
||||
{
|
||||
pointcode_str pc;
|
||||
|
||||
pc.ipvx = sua.AssocDB.instance[sua_id].Dest.addrs[0];
|
||||
pc.ss7 = sua.AssocDB.instance[sua_id].Dest.pc;
|
||||
return(pc);
|
||||
}
|
||||
|
||||
/***********************************************************************/
|
||||
/* get source pointcode address */
|
||||
/***********************************************************************/
|
||||
pointcode_str get_sourcepc_addr( unsigned int sua_id)
|
||||
{
|
||||
pointcode_str pc;
|
||||
pc.ipvx = sua.AssocDB.instance[sua_id].Source.addrs[0];
|
||||
pc.ss7 = sua.AssocDB.instance[sua_id].Source.pc;
|
||||
return(pc);
|
||||
}
|
||||
|
||||
/***********************************************************************/
|
||||
/* sua_shutdown */
|
||||
/***********************************************************************/
|
||||
unsigned int sua_shutdown( )
|
||||
{
|
||||
unsigned int result = SUA_TERM_NO_ERROR;
|
||||
|
||||
sua.AssocDB.shutdown();
|
||||
|
||||
return (result);
|
||||
|
||||
}
|
||||
|
||||
|
||||
/***********************************************************************/
|
||||
/* sua_terminate */
|
||||
/***********************************************************************/
|
||||
|
@ -210,7 +261,7 @@ unsigned int sua_terminate( )
|
|||
{
|
||||
unsigned int result = SUA_TERM_NO_ERROR;
|
||||
|
||||
Assoc_sua.shutdown();
|
||||
sua.AssocDB.shutdown();
|
||||
close_logging_file();
|
||||
|
||||
return (result);
|
||||
|
|
|
@ -15,7 +15,7 @@
|
|||
* *
|
||||
***************************************************************************/
|
||||
/*
|
||||
* $Id: sua_adapt.h,v 1.1.1.1 2002/02/04 14:30:41 p82609 Exp $
|
||||
* $Id: sua_adapt.h,v 1.2 2002/11/12 11:02:49 p82609 Exp $
|
||||
*
|
||||
* SUA implementation according to SUA draft issue 6.
|
||||
*
|
||||
|
@ -49,6 +49,7 @@
|
|||
* - Nope
|
||||
*/
|
||||
|
||||
#include "sua.h"
|
||||
#include "sua_database.h"
|
||||
|
||||
#ifdef LINUX
|
||||
|
@ -70,8 +71,8 @@
|
|||
|
||||
using namespace std;
|
||||
|
||||
|
||||
|
||||
pointcode_str get_destpc_addr( unsigned int sua_id);
|
||||
pointcode_str get_sourcepc_addr( unsigned int sua_id);
|
||||
|
||||
|
||||
// end of module sua_adapt.h
|
||||
|
|
|
@ -15,7 +15,7 @@
|
|||
* *
|
||||
***************************************************************************/
|
||||
/*
|
||||
* $Id: sua_asp_mgnt.cpp,v 1.1.1.1 2002/02/04 14:30:41 p82609 Exp $
|
||||
* $Id: sua_asp_mgnt.cpp,v 1.3 2002/11/12 11:02:49 p82609 Exp $
|
||||
*
|
||||
* SUA implementation according to SUA draft issue 6.
|
||||
*
|
||||
|
@ -79,12 +79,13 @@
|
|||
#include "sua_tcb.h"
|
||||
|
||||
#include <cstdio>
|
||||
#include <iostream>
|
||||
#include <string>
|
||||
|
||||
extern db_Sua_LocalList local_sua;
|
||||
extern db_Sua_RemoteList remote_sua;
|
||||
extern db_Sua_AssociationList Assoc_sua;
|
||||
extern db_Sua_ASList ApplicServ_sua;
|
||||
using namespace std;
|
||||
|
||||
extern db_Sua_DatabaseList sua;
|
||||
|
||||
extern tcb_Sua_msgqueue_pool msg_store;
|
||||
|
||||
/***********************************************************************/
|
||||
|
@ -121,7 +122,7 @@ int sua_send_ASPUP( unsigned int Sua_assoc_id
|
|||
|
||||
delivery_type = SCTP_UNORDERED_DELIVERY;
|
||||
|
||||
sctp_assoc_id = Assoc_sua.instance[Sua_assoc_id].SCTP_assoc_id;
|
||||
sctp_assoc_id = sua.AssocDB.instance[Sua_assoc_id].SCTP_assoc_id;
|
||||
|
||||
/* does association exist? */
|
||||
if (sctp_assoc_id > 0)
|
||||
|
@ -198,7 +199,7 @@ int sua_send_ASPUP_ACK( unsigned int Sua_assoc_id,
|
|||
|
||||
delivery_type = SCTP_UNORDERED_DELIVERY;
|
||||
|
||||
sctp_assoc_id = Assoc_sua.instance[Sua_assoc_id].SCTP_assoc_id;
|
||||
sctp_assoc_id = sua.AssocDB.instance[Sua_assoc_id].SCTP_assoc_id;
|
||||
|
||||
/* does association exist? */
|
||||
if (sctp_assoc_id > 0)
|
||||
|
@ -268,7 +269,7 @@ int sua_send_ASPDOWN_ACK( unsigned int Sua_assoc_id
|
|||
|
||||
delivery_type = SCTP_UNORDERED_DELIVERY;
|
||||
|
||||
sctp_assoc_id = Assoc_sua.instance[Sua_assoc_id].SCTP_assoc_id;
|
||||
sctp_assoc_id = sua.AssocDB.instance[Sua_assoc_id].SCTP_assoc_id;
|
||||
|
||||
/* does association exist? */
|
||||
if (sctp_assoc_id > 0)
|
||||
|
@ -338,7 +339,7 @@ int sua_send_BEAT( unsigned int Sua_assoc_id
|
|||
|
||||
delivery_type = SCTP_UNORDERED_DELIVERY;
|
||||
|
||||
sctp_assoc_id = Assoc_sua.instance[Sua_assoc_id].SCTP_assoc_id;
|
||||
sctp_assoc_id = sua.AssocDB.instance[Sua_assoc_id].SCTP_assoc_id;
|
||||
|
||||
/* does association exist? */
|
||||
if (sctp_assoc_id > 0)
|
||||
|
@ -412,7 +413,7 @@ int sua_send_BEAT_ACK( unsigned int Sua_assoc_id,
|
|||
|
||||
delivery_type = SCTP_UNORDERED_DELIVERY;
|
||||
|
||||
sctp_assoc_id = Assoc_sua.instance[Sua_assoc_id].SCTP_assoc_id;
|
||||
sctp_assoc_id = sua.AssocDB.instance[Sua_assoc_id].SCTP_assoc_id;
|
||||
|
||||
/* does association exist? */
|
||||
if (sctp_assoc_id > 0)
|
||||
|
@ -476,9 +477,10 @@ int sua_send_ASPAC( unsigned int Sua_assoc_id
|
|||
msg.sua_prim.hdr_msg_type.asptm = asptm_act;
|
||||
/* traffic mode is optional mandatory */
|
||||
msg.sua_prim.traf_mode_pres = TRUE;
|
||||
msg.sua_prim.traf_mode = tmt_loadshare;
|
||||
msg.sua_prim.traf_mode = tmt_override;
|
||||
/* rest is optional */
|
||||
msg.sua_prim.rout_con_pres = FALSE;
|
||||
msg.sua_prim.rout_con_pres = TRUE;
|
||||
msg.sua_prim.rout_con = 1;
|
||||
msg.sua_prim.info_pres = FALSE;
|
||||
|
||||
// encode the SUA unitdata message
|
||||
|
@ -487,7 +489,7 @@ int sua_send_ASPAC( unsigned int Sua_assoc_id
|
|||
|
||||
delivery_type = SCTP_UNORDERED_DELIVERY;
|
||||
|
||||
sctp_assoc_id = Assoc_sua.instance[Sua_assoc_id].SCTP_assoc_id;
|
||||
sctp_assoc_id = sua.AssocDB.instance[Sua_assoc_id].SCTP_assoc_id;
|
||||
|
||||
/* does association exist? */
|
||||
if (sctp_assoc_id > 0)
|
||||
|
@ -571,7 +573,7 @@ int sua_send_ASPAC_ACK( unsigned int Sua_assoc_id,
|
|||
|
||||
delivery_type = SCTP_UNORDERED_DELIVERY;
|
||||
|
||||
sctp_assoc_id = Assoc_sua.instance[Sua_assoc_id].SCTP_assoc_id;
|
||||
sctp_assoc_id = sua.AssocDB.instance[Sua_assoc_id].SCTP_assoc_id;
|
||||
|
||||
/* does association exist? */
|
||||
if (sctp_assoc_id > 0)
|
||||
|
@ -617,7 +619,9 @@ int sua_send_ASPAC_ACK( unsigned int Sua_assoc_id,
|
|||
/***********************************************************************/
|
||||
/* sua_send_ASPINAC_ACK */
|
||||
/***********************************************************************/
|
||||
int sua_send_ASPINAC_ACK( unsigned int Sua_assoc_id
|
||||
int sua_send_ASPINAC_ACK( unsigned int Sua_assoc_id,
|
||||
boolean routing_context_present,
|
||||
uint32_t routing_context
|
||||
)
|
||||
{
|
||||
Sua_container msg;
|
||||
|
@ -634,7 +638,8 @@ int sua_send_ASPINAC_ACK( unsigned int Sua_assoc_id
|
|||
// fill in the main sua header
|
||||
msg.sua_prim.hdr_msg_class = sua_asptm;
|
||||
msg.sua_prim.hdr_msg_type.asptm = asptm_inact_ack;
|
||||
msg.sua_prim.rout_con_pres = FALSE;
|
||||
msg.sua_prim.rout_con_pres = routing_context_present;
|
||||
msg.sua_prim.rout_con = routing_context;
|
||||
msg.sua_prim.info_pres = FALSE;
|
||||
|
||||
// encode the SUA unitdata message
|
||||
|
@ -643,7 +648,7 @@ int sua_send_ASPINAC_ACK( unsigned int Sua_assoc_id
|
|||
|
||||
delivery_type = SCTP_UNORDERED_DELIVERY;
|
||||
|
||||
sctp_assoc_id = Assoc_sua.instance[Sua_assoc_id].SCTP_assoc_id;
|
||||
sctp_assoc_id = sua.AssocDB.instance[Sua_assoc_id].SCTP_assoc_id;
|
||||
|
||||
/* does association exist? */
|
||||
if (sctp_assoc_id > 0)
|
||||
|
@ -704,7 +709,7 @@ int process_ASPUP_msg ( unsigned int sua_assoc_id,
|
|||
cout << "sua_asp_mgnt.c:ASPUP received, send back a ASPUP_ACK and set state to ASP-INACTIVE.\n";
|
||||
#endif
|
||||
|
||||
Assoc_sua.up(sua_assoc_id,0);
|
||||
sua.AssocDB.up(sua_assoc_id,0);
|
||||
|
||||
error_value = sua_send_ASPUP_ACK( sua_assoc_id ,
|
||||
sua_asp_msg.sua_prim.ASP_id_pres,
|
||||
|
@ -712,7 +717,15 @@ int process_ASPUP_msg ( unsigned int sua_assoc_id,
|
|||
);
|
||||
#ifdef DEBUG
|
||||
cout << "sua_asp_mgnt.c:result send ASPUP_ACK = "<< error_value << "\n";
|
||||
cout << "sua_asp_mgnt.c:ASPUP processing state = "<< Assoc_sua.instance[sua_assoc_id].asp.status << "\n";
|
||||
cout << "sua_asp_mgnt.c:ASPUP processing state = "<< sua.AssocDB.instance[sua_assoc_id].asp.status << "\n";
|
||||
#endif
|
||||
|
||||
#ifdef IPSP_SINGLE
|
||||
error_value = sua_send_ASPAC( sua_assoc_id );
|
||||
#ifdef DEBUG
|
||||
cout << "sua_asp_mgnt.c:result send ASPAC = "<< error_value << "\n";
|
||||
cout << "sua_asp_mgnt.c:ASPAC processing state = "<< sua.AssocDB.instance[sua_assoc_id].asp.status << "\n";
|
||||
#endif
|
||||
#endif
|
||||
|
||||
return(error_value);
|
||||
|
@ -732,14 +745,18 @@ int process_ASPUP_ACK_msg ( unsigned int sua_assoc_id,
|
|||
cout << "sua_asp_mgnt.c:ASPUP_ACK received, looks like remote is inactive.\n";
|
||||
#endif
|
||||
|
||||
Assoc_sua.up(sua_assoc_id,0);
|
||||
sua.AssocDB.up(sua_assoc_id,0);
|
||||
|
||||
#ifndef IPSP_SINGLE
|
||||
/* send activation to remote */
|
||||
error_value = sua_send_ASPAC( sua_assoc_id );
|
||||
|
||||
#ifdef DEBUG
|
||||
cout << "sua_asp_mgnt.c:result send ASPAC = "<< error_value << "\n";
|
||||
cout << "sua_asp_mgnt.c:ASPUP_ACK processing state = "<< Assoc_sua.instance[sua_assoc_id].asp.status << "\n";
|
||||
cout << "sua_asp_mgnt.c:ASPUP_ACK processing state = "<< sua.AssocDB.instance[sua_assoc_id].asp.status << "\n";
|
||||
#endif
|
||||
#endif
|
||||
|
||||
return(error_value);
|
||||
}
|
||||
|
||||
|
@ -759,7 +776,7 @@ int process_ASPDOWN_msg ( unsigned int sua_assoc_id,
|
|||
cout << "sua_asp_mgnt.c:ASPDOWN received, send back a ASPDOWN_ACK and set state to ASP-DOWN.\n";
|
||||
#endif
|
||||
|
||||
Assoc_sua.down(sua_assoc_id,0);
|
||||
sua.AssocDB.down(sua_assoc_id,0);
|
||||
|
||||
|
||||
error_value = sua_send_ASPDOWN_ACK( sua_assoc_id );
|
||||
|
@ -784,7 +801,7 @@ int process_ASPDOWN_ACK_msg ( unsigned int sua_assoc_id,
|
|||
cout << "sua_asp_mgnt.c:ASPDOWN_ACK received, remote looks down.\n";
|
||||
#endif
|
||||
|
||||
Assoc_sua.down(sua_assoc_id,0);
|
||||
sua.AssocDB.down(sua_assoc_id,0);
|
||||
|
||||
return(error_value);
|
||||
}
|
||||
|
@ -853,10 +870,10 @@ int process_ASPAC_msg ( unsigned int sua_assoc_id,
|
|||
#endif
|
||||
|
||||
if (sua_asp_msg.sua_prim.traf_mode_pres)
|
||||
holdtraffic_pres = Assoc_sua.activate(sua_assoc_id,
|
||||
holdtraffic_pres = sua.AssocDB.activate(sua_assoc_id,
|
||||
sua_asp_msg.sua_prim.traf_mode);
|
||||
else
|
||||
holdtraffic_pres = Assoc_sua.activate(sua_assoc_id,0);
|
||||
holdtraffic_pres = sua.AssocDB.activate(sua_assoc_id,0);
|
||||
|
||||
|