45 Commits

Author SHA1 Message Date
Sylvain Rochet
9e021cd1a8 improved PPP default interface management, added ppp_set_default() API call 2012-07-14 17:25:24 +02:00
Sylvain Rochet
90faecd86e replaced u_int{8,16,32}_t to lwIP u{8,16,32}_t types
added padding to compiler generated bitfield, this is seen as best practice,
maybe it helps buggy compilers
2012-07-03 22:59:50 +02:00
Sylvain Rochet
2e069429c2 removed bool type, replaced by u8_t 2012-07-03 22:03:51 +02:00
Erik Ekman
11a3057e8e PPP: Add option to skip FCS table
Option PPP_FCS_TABLE is created which controls if PPPoS FCS calculation
should be done against precalculated table or by using a short algorithm.

Default value is 1, keeps old behaviour.
Setting it to 0 saves around 0.5 kB flash.
2012-06-23 15:11:49 +02:00
Sylvain Rochet
9b7860d6ec merged ppp_write and ppp_write_pbuf 2012-06-22 14:17:35 +02:00
Sylvain Rochet
b6db4a0e2e PPP IPv6 local link support added 2012-06-21 18:05:17 +02:00
Sylvain Rochet
26250f1953 removed pcb->chap_mdtype_all 2012-06-19 23:14:31 +02:00
Sylvain Rochet
eadd56a376 replaced exit code (pcb->status) with ppp_ioctl() 2012-06-19 22:00:12 +02:00
Sylvain Rochet
8e9c07df39 more idle time limit macros 2012-06-19 18:02:23 +02:00
Sylvain Rochet
4a7f2ffc5e pcb->outpacket_buf replaced by pbuf everywhere it was used 2012-06-18 02:21:18 +02:00
Sylvain Rochet
22fad86453 PAP is now using pbuf instead of pcb->outpacket_buf 2012-06-18 01:10:21 +02:00
Sylvain Rochet
8641b8a36e PPP_PCB are now allocated using memp_alloc() 2012-06-17 23:48:55 +02:00
Sylvain Rochet
3120487243 cleanified old style C function declaration from utils.c 2012-06-17 01:47:45 +02:00
Sylvain Rochet
99bf9775d9 NUM_PPP is defined is opt.h, clearing from ppp_impl.h 2012-06-16 18:45:53 +02:00
Sylvain Rochet
4a8ff6d824 protent prototype switched from unit to ppp_pcb 2012-06-16 02:43:13 +02:00
Sylvain Rochet
4b7e3af77c IPCP and LCP structures moved to ppp_pcb 2012-06-16 02:13:50 +02:00
Sylvain Rochet
2deb13df43 EAP is now using ppp_pcb as well 2012-06-15 01:06:27 +02:00
Sylvain Rochet
844f5e5af1 moved auth.c global variables to ppp_pcb 2012-06-14 00:25:45 +02:00
Sylvain Rochet
51bfac71b0 auth.c functions now use ppp_pcb* as first argument 2012-06-14 00:08:56 +02:00
Sylvain Rochet
3a30e5bf78 removed ppp_input_header, replaced using 2 chained pbuf the only area we need it 2012-06-12 23:28:09 +02:00
Sylvain Rochet
6e2722a6d3 started the unit to ppp_pcb replacement 2012-06-11 01:39:03 +02:00
Sylvain Rochet
5abdc99f3e no more PPP unit number in PPPoE, now using ppp_pcb 2012-06-10 01:00:50 +02:00
Sylvain Rochet
444646b65e renamed ppp_control to ppp_pcb, replaced unit number to ppp_pcb in all ppp.h declared functions 2012-06-09 23:06:45 +02:00
Sylvain Rochet
8bd508a73d moved ppp_settings to ppp_control, improved PPP API to really allow multiple PPP sessions 2012-06-09 18:06:55 +02:00
Sylvain Rochet
1cceb4e0ad moved hide_password global variable to ppp_options 2012-06-09 17:05:19 +02:00
Sylvain Rochet
c2d2034ae8 PPPoE persist is working, removing FIXME comments about that 2012-06-09 16:56:32 +02:00
Sylvain Rochet
f94ed922e5 moved exit status global variable to ppp_control 2012-06-09 16:43:12 +02:00
Sylvain Rochet
7a57d28db4 moved listen_time global variable to ppp_settings 2012-06-09 16:18:01 +02:00
Sylvain Rochet
ce5121e659 removed unused "unsuccess" global variable 2012-06-09 16:00:22 +02:00
Sylvain Rochet
6b8c78bacc moved remote_name and explicit_remote global variable to ppp_settings 2012-06-09 15:55:01 +02:00
Sylvain Rochet
2da930ba4c removed some useless extern 2012-06-09 15:45:52 +02:00
Sylvain Rochet
772cac7946 removed useless error_count global variable 2012-06-09 15:42:57 +02:00
Sylvain Rochet
42f672d85d phase global variable moved to ppp_control structure 2012-06-09 15:39:16 +02:00
Sylvain Rochet
6db3026d47 using our_name from ppp_settings (only used in server mode and disabled by default) 2012-06-09 14:39:44 +02:00
Sylvain Rochet
becc306300 using idle_time_limit from ppp_settings 2012-06-09 14:35:06 +02:00
Sylvain Rochet
2ec79c03a0 unused ifunit global variable removed 2012-06-09 01:26:21 +02:00
Sylvain Rochet
d27da93c33 now using maxconnect from ppp_settings 2012-06-07 23:34:06 +02:00
Sylvain Rochet
7ef99ee6f3 added a persist option (enabled by default for now until we add a way for users to pass a ppp_settings structure)
improved PPPoE state machine and added persist mode support
2012-06-07 00:46:19 +02:00
Sylvain Rochet
6f21f48937 added MTU support (using MRU from the peer) 2012-06-05 23:10:38 +02:00
Sylvain Rochet
7d7513c71c re-enabled DNS support 2012-06-04 23:19:23 +02:00
Sylvain Rochet
093c7b4386 cleaned depreacted __P() and __V() macros, removed the legacy varargs.h header 2012-06-04 00:34:28 +02:00
Sylvain Rochet
31456a6dfe removed CamelCase in ppp.c and ppp_impl.h, added compat macro in ppp.h (but disabled for now) 2012-06-03 23:56:56 +02:00
Sylvain Rochet
3bad9ff50a ppp_impl.h is back! 2012-06-03 20:25:32 +02:00
Sylvain Rochet
eb75ae05c6 Early development stage of an attempt to port PPPd 2.4.5 to lwIP.
PPPoE works, PPPoS code is not ported at all.

I am using the RP-PPPoE server to do my tests using the following
configuration:

$ cat /etc/ppp/pppoe-server-options
debug
login
lcp-echo-interval 10
lcp-echo-failure 10
ms-dns 192.168.4.130
ms-dns 192.168.4.231
netmask 255.255.255.0
defaultroute
noipdefault
usepeerdns

$ cat /etc/ppp/allip
192.168.4.1-200

$ pppoe-server -C isp -L 192.168.4.254 -p /etc/ppp/allip -I tap0

Plus the usual auth-lines in /etc/ppp/pap-secrets and
/etc/ppp/chap-secrets .

And the unix port minimal "echo" project slightly modified to use
the "tcpip" API, so with threads, which I am going to commit with
NO_SYS as a -Dmacro.

It still use some of the linux'ism, such as syslog() and crypt(),

I do not want to drop the syslog() supports at the moment, this is
pretty useful to debug, and we may just convert the way the syslog() is
done to provide a trace feature to our PPP users, as a compile-time
option.
2012-05-16 02:02:02 +02:00
Simon Goldschmidt
d6227aece6 splitted ppp.h to an internal and external header file to get a clear separation of which functions an application or port may use (task #11281) 2011-09-11 19:30:28 +02:00