2004-04-28: Jens Jakobsen Improved Solaris support. OpenGGSN now correctly initializes tun/tap driver under Solaris. As a consequence the ggsn network interface IP address is set to the network address plus one. Added routing manipulation and IP address alias capability for FreeBSD. 2004-01-19: Jens Jakobsen Initial FreeBSD port (Thanks to Pavel Andreev ). IMSI bugfix. The IMSI encoding used by create PDP context was missing the leading '1111' to indicate that the 16'nd digit was unused. (Thanks to Pavel Andreev ). 2004-01-15: Jens Jakobsen Added iptables firewall script. 2004-01-14: Jens Jakobsen Changes to allow compilation under Solaris: u_int8_t changed to uint8_t and tun api changed for sun platform (#ifdef). 2004-01-09: Jens Jakobsen Fixed bug which included NSAPI in GTPv0 create PDP context messages. 2003-11-10: Jens Jakobsen Added --net option for sgsnemu. Allow user to specify the network address and mask of the local interface. Added --gtpversion option for sgsnemu. Allow user to specify which GTP version to use. Added --nsapi option for sgsnemu. Allow user to specify which NSAPI to use. Changed the functionality for multiple contexts. Previously contexts were differentiated by nsapi. This limited the number of contexts to 16. Now each context is established with a new imsi and msisdn. 2003-10-22: Jens Jakobsen Support for GTP1. Currently without support for the secondary pdp context activation procedure. sgsnemu will first attempt to use GTP1. If that fails it will proceed with GTP0. Various gtplib API changes to allow support for GTP1. gtplib now listens to 3 separate UDP ports: GTP0, GTP1 control plane and GTP1 user plane. A socket for each port has to be included in the application select loop. gtplib now verifies that messages are valid for the particular type of support node. As an example a received Create PDP Context Request message is not allowed for an SGSN. Standards compliance document. 2003-07-07: Jens Jakobsen Added spec.in file for building binary RPM packages. Now openggsn will install binaries, man pages as well as scripts. Added ggsn and sgsnemu man pages Added ggsn Sys V init script Added bootstrap script for autotools automation 2003-04-11: Jens Jakobsen Added -ggdb to gtp, sgsnemu and ggsn makefiles in order to include debugging information. Added ippool.c and ippool.h to ggsn. This allows for generic allocation of dynamic ip addresses based on a / description of ip address space. The same files are also used in sgsnemu, but only for hashing IP addresses. At the same time the corresponding functionality is removed from pdp.c. Added syserr.h and syserr.c to ggsn and sgsnemu. These files allow writing to syslog with file name and line number. Later this should also be introduced in gtp. Added support for DNS protocol configuration options in ggsn for create context response. This allow the MS to setup DNS configuration correctly. tun.c and tun.h have been updated to allow setting interface IP addresses and routes by means of ioctl and netlink. This allow sgsnemu to allocate an interface IP address for each context established. 2003-01-29: Jens Jakobsen Added -L../gtp to sgsnemu and ggsn makefiles so that make will work without an installed libgtp. Added sgsnemu check to check for valid pointer when deleting tun. Removed enabling of ip_forward = 1 from ggsn.c and sgsnemu. From a security point of view it was not very good that openggsn automatically enabled routing. Added ipup, ipdown and createif to sgsnemu/cmdline.ggo. Now sgsnemu will set up default route and then execute ipup script after tun device has been set up. After tun has been deleted the ipdown script is executed. Added support for ping to sgsnemu. Added ipup and ipdown to ggsn/cmdline.ggo.