Commit graph

151 commits

Author SHA1 Message Date
Brendan O'Dea
5e01d2924d - Add startup-config(5) manpage [FIXME].
- Revise nsctl to allow arbitrary strings/args to be passed to plugins.
2004-11-17 08:23:34 +00:00
David Parrish
5d4d6bb059 Add manpages from Jonathan McDowell
Remove reference to old -a command line argument
2004-11-16 21:54:46 +00:00
Brendan O'Dea
4f5ea4fbe0 - Ignore gateway address in Framed-Route (from Jonathan McDowell).
- Call sessionshutdown() when a tunnel is dropped rather than
  sessionkill() to ensure that RADIUS stop records are sent.
- Cleanup: make a bunch of global functions/variables static.
2004-11-16 07:54:32 +00:00
Brendan O'Dea
3ab5eeb379 make BGP keepalive/hold time configurable, revise config syntax 2004-11-11 03:07:42 +00:00
Brendan O'Dea
9cb9a8b436 add a callback to allow plugins to fetch values from the running config 2004-11-09 08:05:01 +00:00
Brendan O'Dea
32f6edf266 Fix intercepts: don't double-snoop throttled customers, ensure
byte/packet counts are only updated once
2004-11-09 05:42:53 +00:00
Brendan O'Dea
f0cab7b0b1 setsid 2004-11-05 07:50:05 +00:00
Brendan O'Dea
4e0597cd50 use LOG for logging macro
clean up initlcp handling
2004-11-05 04:55:25 +00:00
Brendan O'Dea
1a8d1e7b24 add peer_address config option 2004-11-05 02:47:47 +00:00
Brendan O'Dea
4da9597503 add length checks and comments to proxy LCP parsing 2004-11-05 02:25:25 +00:00
Brendan O'Dea
fa7204fcf4 byte counters are sent to the master frequently which resets the idle
counter, don't bother forwarding packets for this reason
2004-11-04 06:05:55 +00:00
Brendan O'Dea
c66fc8c6b9 retain subdomain of hostname if any 2004-11-04 05:08:36 +00:00
Brendan O'Dea
284e4dd546 make log a conditional macro for _log 2004-11-03 13:23:58 +00:00
Brendan O'Dea
8031ce79f6 fix cut-n-paste error 2004-11-02 06:45:03 +00:00
Brendan O'Dea
14013054f3 - Use 2 seperate u16 values for throttle rate in/out
- Defer adding radius fds to the select loop until become_master
2004-11-02 04:35:03 +00:00
Brendan O'Dea
060799b077 merge 2004-10-30 07:17:41 +00:00
Brendan O'Dea
cdf7603bf4 need to init_cli before loading config 2004-10-30 06:58:55 +00:00
Brendan O'Dea
7ecd8a42e5 make number of throttle buckets configurable 2004-10-29 04:01:11 +00:00
Brendan O'Dea
aa4877277a unused 2004-10-28 03:58:38 +00:00
Brendan O'Dea
290f8d05ab hostname set via command line not config 2004-10-28 03:31:39 +00:00
Brendan O'Dea
c775894509 fix command line args 2004-10-25 15:07:51 +00:00
David Parrish
020c472e75 Don't continue creating session if no IP addresses are free 2004-10-05 02:50:03 +00:00
David Parrish
5e9fdf2e5f Don't write accounting files if not required.
Fix checking for mmap success
2004-09-23 03:59:09 +00:00
David Parrish
aa750c5e05 l2tpns-dont-timeshift-unidirectional-traffic.patch 2004-09-20 23:34:35 +00:00
David Parrish
3d72768fce Add configurable hostname 2004-09-19 23:26:46 +00:00
David Parrish
ab0c6fbd45 Add support for Hidden AVPs and chap-response 2004-09-19 23:19:23 +00:00
David Parrish
d52f68e6d3 Cleanups and sync 2004-09-02 04:18:07 +00:00
David Parrish
551daa285a Per-user upload and download throttle rates - Yuri
Make autothrottle.so understand cisco lcp:interface-config - Yuri
Show filter stats in show session - Yuri
2004-08-26 06:22:37 +00:00
David Parrish
abbc5c5fce Set a maximum time to wait for radius to be ready on shutdown 2004-08-26 04:43:52 +00:00
David Parrish
d490579025 Add renegotiation patch from Yuri (ppp-aug10-patch)
Indentation and style cleanups
Make md5.c use standard memcpy and memset
2004-08-13 00:02:50 +00:00
David Parrish
5779efc7ae Allow cli session changes to happen if the session is timing out 2004-08-02 06:06:28 +00:00
David Parrish
f7a59cd6cc - Add support for LCP Ident and CallBack (rejection only) from Yuri
- Initiate LCP if not attempted by the client
2004-08-02 05:40:21 +00:00
David Parrish
9c8100d580 - Write pid file if filename is set
- Add startup script and monitor script from Yuri
- Some logging correctness fixes from Iain Wade
- Combined LCP patches from Iain and Yuri. This should allow Windows 2k/XP
  clients to connect, as well Linksys DSL modems.
2004-08-02 03:38:01 +00:00
David Parrish
99b207fddf Send my address if no bind_address on IPCP 2004-07-28 06:12:30 +00:00
David Parrish
439dc534eb Don't warn about unknown subtype attribute 2004-07-28 04:01:12 +00:00
David Parrish
a17df3e475 Makefile fix and config radius port patches from JK 2004-07-26 00:20:41 +00:00
Brendan O'Dea
4ae7dabffe fix for -v from Juergen Kammer 2004-07-12 15:16:27 +00:00
Brendan O'Dea
a4c14149f2 add lock_pages option 2004-07-12 08:21:45 +00:00
Brendan O'Dea
eae3c0527f - TerminateAck fix from Yuri
- Adject cli_loop args for libcli 1.8.0
- Allow for backward compatabity in C_PING packets
- Don't send RADIUS stop messages from sessionshutdown when called from
  sessionkill.
2004-07-11 07:57:33 +00:00
Brendan O'Dea
6adc660b49 - s/tap/tun/
- fix for LASTSEEN breakage:  don't do anything in the CLI other than
  flag changes to be made by the parent
- split out master parts from cluster_check_master() into cluster_check_slaves()
2004-07-08 16:54:35 +00:00
Brendan O'Dea
4ad7536258 - set hostname in CLI prompt
- add assertions to help identify odd LASTSEEN breakage
- make cluster_hb_interval work; include interval/timeout in heartbeats
  so that a change on the master is propagated immediately to the slaves
- use fast heartbeats when there are slaves not up to date
- ensure basetime of shut down master is set to zero (prevent delayed election)
- fix radius session leak on IPCP timeout
- fix some off-by-one errors in tunnel/session loops
2004-07-07 09:09:53 +00:00
Brendan O'Dea
a5848e393c fluff to simplify diffs 2004-07-02 07:31:23 +00:00
David Parrish
7aa420ce9f * Update cli callbacks to work with libcli 1.6.
This supports privileged and unprivileged commands, as well as a configuration
  mode
* Add help for all cli commands
* Add "show version" command
* Fix uptime counter display
* Fix nasty bug where cluster basetime can be set to 0 when sending initial
  heartbeat
* Don't rmmod ip_conntrack, as this can take a lot of time
* Re-order logging in routeset such that the action is given before any error
* Use the correct gateway address when deleting routes
* Remove any routes when address changes
* Require authentication if telnet from remote ip
* Require enable password always
* Return error if show pool done on slave
* We MUST immediately exit if we're the wrong master!
2004-06-28 02:43:13 +00:00
David Parrish
c239d4b228 * Wed Jun 23 2004 David Parrish <david@dparrish.com> 2.0.0
- Major release
- Completely replace active/standby clustering with a new peer-to-peer
  clustering method which allows much greater throughput and is a lot more fault
  tolerant
- Add internal tbf implementation for throttling without relying on tc and
  kernel HTB
- Add support for iBGP and eBGP to advertise routes
- Add cli commands "show cluster", "show bgp", "show ipcache", "show throttle",
  "show tbf", "suspend bgp", "restart bgp", "show user"
- Interception destination must be set per-user
- If SMP machine, allow use of SCHED_FIFO, which should improve performance
- Added config option to send GARP at startup
- Added plugin_become_master and plugin_new_session_master plugin hooks
- Remove useless sessionsendarp(). This isn't needed now that we are using TUN
  instead of TAP.
- ICMP rate limiting so not every unreachable packet is replied with an ICMP
  unreachable message
- mangle table is not required on anything but the cluster master, so slaves
  will drop the mangle table and attempt to unload the ip_conntrack module
- Statically assigned IP addresses (by Radius) work now
- Add -d command-line flag to detach and become a daemon
- Configuration file is now "/etc/l2tpns/startup-config"
- Reduced MIN_IP_SIZE to 0x19 to stop a pile of Short IP warnings
- Resend initial IPCP request until it's acknowleged by the client
- Better radius session cleanup logic
- Many miscellaenous bugfixes and performance enhancements
- Thanks to Michael O'Reilly and Brendan O'Dea for most of these new features
2004-06-23 03:52:24 +00:00
David Parrish
b4451ee1a4 Add -d detach option 2004-05-24 04:42:50 +00:00
David Parrish
c861a50b72 - Use multiple radius sockets to allow more concurrent authentication requests
- Add gcc __attribute__ to logging functions
- Fix warnings shown by __attribute__
- Make sure regular cleanup happens regularly under high load
- Add variable cleanup_interval for changing cleanup interval
- Add support for reading more than one packet per fd in each processing loop
- This is configurable with the multi_read_count variable
- Remove segv handler so core dumps can happen
- Use nonblocking sockets
- Increase tun queue length
- Fix minimum length of IP packets
- Remove per-packet plugin hooks (they are slow)
- Don't drop session if no free RADIUS
- Don't expire more than 1000 sessions per cleanup interval
- Remove -a and -c command-line options. They don't work anyway
- Don't require file: in log_filename
2004-05-24 04:20:28 +00:00
David Parrish
8a8b45c174 Init data before trying to use it 2004-05-10 00:39:34 +00:00
David Parrish
8c270aac27 . 2004-03-05 00:22:45 +00:00
David Parrish
0c736f6fe8 Don't use configure it's a waste of time 2004-03-05 00:22:06 +00:00
David Parrish
fc0a363208 * Fri Mar 5 2004 David Parrish <david@dparrish.com> 1.1.0
- Change all strcpy() calls to strncpy() to avoid buffer overflow potential
- Add ICMP host unreachable support
- Logging to syslog if log_file = "syslog:facility"
- Now requires libcli 1.5
- All configuration moves to a config structure
- Ability to modify and write config on the fly through command-line interface
- Config file support is removed, and now handled by the cli
- Show hostname in cli prompt
- Keep current state type for tunnels
- Add uptime command do CLI, which also shows real-time bandwidth utilisation
- Add goodbye command to cluster master, which forces droppping a slave
- Cache IP address allocation, so that reconnecting users get the same address
- Fix tunnel resend timeouts, so that dead tunnels will be cleaned up
- Allocate tunnels and radius without using a linked list which had issues
- Fix some off-by-one errors in tunnel and session and radius arrays
- Save and reload ip address pool when dieing
- Check version and size of reloaded data when restarting
- Remove plugin_config support
- Remove old support for TBF which didn't work anyway. HTB is required to do throttling now.
- Add COPYING and Changes files
2004-03-05 00:09:03 +00:00