History log of /haiku/src/add-ons/kernel/network/ppp/shared/libkernelppp/KPPPInterface.cpp
Revision Date Author Comments
# 7e66a287 28-Aug-2019 Jaroslaw Pelczar <jarek@jpelczar.com>

libkernelppp: Use arpa/inet.h for htons macros

Signed-off-by: Jaroslaw Pelczar <jarek@jpelczar.com>
Change-Id: I6a9c8ef664d266b4d720fcf85525e73d82e6bd43
Reviewed-on: https://review.haiku-os.org/c/haiku/+/1760
Reviewed-by: waddlesplash <waddlesplash@gmail.com>


# 47d56879 28-Aug-2019 Jaroslaw Pelczar <jarek@jpelczar.com>

KPPPInterface.cpp: Fix GCC error

src/add-ons/kernel/network/ppp/shared/libkernelppp/KPPPInterface.cpp: In
member function 'void KPPPInterface::CalculateBaudRate()':
src/add-ons/kernel/network/ppp/shared/libkernelppp/KPPPInterface.cpp:2018:4:
error: this 'if' clause does not guard...
[-Werror=misleading-indentation]
if (ChildAt(index)->Ifnet())
^~
src/add-ons/kernel/network/ppp/shared/libkernelppp/KPPPInterface.cpp:2020:5:
note: ...this statement, but the latter is misleadingly indented as if
it were guarded by the 'if'
return;

Signed-off-by: Jaroslaw Pelczar <jarek@jpelczar.com>
Change-Id: I8790a8ea3a961d73073b295ac438f3c60c16fcba
Reviewed-on: https://review.haiku-os.org/c/haiku/+/1759
Reviewed-by: waddlesplash <waddlesplash@gmail.com>


# af47fc80 28-Aug-2019 Jaroslaw Pelczar <jarek@jpelczar.com>

KPPPInterface.cpp: Fix missing autolocker variable name

Signed-off-by: Jaroslaw Pelczar <jarek@jpelczar.com>
Change-Id: I2eb8211477568e3b34e4b9eff5efa5c84c540ccd
Reviewed-on: https://review.haiku-os.org/c/haiku/+/1757
Reviewed-by: waddlesplash <waddlesplash@gmail.com>


# cd6365c7 17-May-2018 Jérôme Duval <jerome.duval@gmail.com>

style fixes


# 859d401d 26-Apr-2017 Alexander von Gluck IV <kallisti5@unixzen.com>

libkernelppp: Report fatal problems deep in ppp to syslog


# e3724c38 04-Jan-2014 mshlyn <linlongzhou@163.com>

PPP: Port to the new stack.

Signed-off-by: Augustin Cavalier <waddlesplash@gmail.com>

This is a squash of the 42 commits by @mshlyn, as I couldn't find a
way to break them into logical chunks. I did not include these in the build,
as it appears that they only partially work anyway, and much more cleanup is
still needed. However, this is a huge improvement on what was in the tree
before, which looked horrendous and didn't even compile (as it was designed
for the old stack).

Mostly fixes #812.


# fc1cf1a3 26-Mar-2007 Axel Dörfler <axeld@pinc-software.de>

Style cleanup, patch by Vasilis Kaoutsis - thanks!


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20430 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 2f13f213 16-Jul-2006 Waldemar Kornewald <wkornew@nowhere.fake>

* Made the PPP code more single-threaded.
* Removed ppp_up code.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18161 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 758b1d0e 12-Nov-2005 Ingo Weinhold <ingo_weinhold@gmx.de>

Fixes that make Haiku build with gcc 4. Mainly out of the following
categories:
* Missing includes (like <stdlib.h> and <string.h>).
* Linking against $(TARGET_LIBSTDC++) instead of libstdc++.r4.so.
* Local variables shadowing parameters.
* Default parameters in function definitions (as opposed to function
declarations).
* All C++ stuff (nothrow, map, set, vector, min, max,...) must be imported
explicitly from the std:: namespace now.
* "new (sometype)[...]" must read "new sometype[...]", even if sometype is
something like "const char *".
* __FUNCTION__ is no longer a string literal (but a string expression), i.e.
'printf(__FUNCTION__ ": ...\n")' is invalid code.
* A type cast results in a non-lvalue. E.g. "(char *)buffer += bytes"
is an invalid expression.
* "friend class SomeClass" only works when SomeClass is known before.
Otherwise the an inner class with that name is considered as friend.
gcc 4 is much pickier about scopes.
* gcc 4 is generally stricter with respect to type conversions in C.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14878 a95241bf-73f2-0310-859d-f6bbb57e9c96


# a89ad654 12-Oct-2005 Waldemar Kornewald <wkornew@nowhere.fake>

Thank you, Kristian Knuechel, for reporting a bug (now fixed).
Fixed the build.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14359 a95241bf-73f2-0310-859d-f6bbb57e9c96


# abdb7d1a 10-Oct-2005 Waldemar Kornewald <wkornew@nowhere.fake>

- updated email-address
- removed profiles, ppp_up, and some TODOs
- simplified KPPPReportManager and reports API, KPPPInterface::Up()+Down(), and PPPInterfaceListener (also removed some features from the last one)
- KPPPInterface now sends the last PPP_CONNECTION_REPORT message to every newly registered report receiver
- added net_server to the build, but removed old net_server testing-stuff

all changes are completely untested


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14338 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 484a5f0e 12-Jan-2005 Waldemar Kornewald <wkornew@nowhere.fake>

Fixed some stupid bugs. Added atomic.S (only atomic_xxx64 functions). This will be removed later because Haiku has it built-in.
Added some little functions.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10691 a95241bf-73f2-0310-859d-f6bbb57e9c96


# e91b7374 27-Dec-2004 Waldemar Kornewald <wkornew@nowhere.fake>

Implemented support for default interface and ConnectOnDemand within core. IPCP will probably need more tweaking, did not have a look at that.
Interface statistics are now maintained.
If I did not forget anything the core stack is now feature-complete.
Only ppp_up must be finished, bugs and hacks found, and modem support added; that's it for R1, I hope.
Everyting untested!


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10541 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 0cbb739d 20-Dec-2004 Waldemar Kornewald <wkornew@nowhere.fake>

Renamed "Dial" to "Connect" (only modems dial).
Removed DialOnDemand settings key.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10496 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 84b580c4 20-Nov-2004 Waldemar Kornewald <wkornew@nowhere.fake>

DialOnDemand will be handled differently. Instead of setting it manually in the prefs we have one default interface. Still not finished.
Moved ppp_up code to KPPPManager.
Experimenting with IPCP DialOnDemand support.
Many changes I do not remember.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10117 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 8604895e 02-Jun-2004 Niels Sascha Reedijk <niels.reedijk@gmail.com>

Fix doxygen output


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7734 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 3f3689bb 01-Jun-2004 Waldemar Kornewald <wkornew@nowhere.fake>

Finished doxygen comments for the PPP API.
Minor changes to simplify PAP authenticator.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7730 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 13013331 19-May-2004 Waldemar Kornewald <wkornew@nowhere.fake>

Added *many* Doxygen comments. More will follow. Documentation is no fun at all, really.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7617 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 25ae6950 15-Apr-2004 Waldemar Kornewald <wkornew@nowhere.fake>

Changed the way IdleSince is updated.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7210 a95241bf-73f2-0310-859d-f6bbb57e9c96


# ce0b86e9 05-Apr-2004 Waldemar Kornewald <wkornew@nowhere.fake>

* IPCP: I think this fixed the default route bug. At least it does not crash anymore.
* PPP stack: Fixed a bug that was introduced with the settings_tools change.
* Modem: Renamed "Interface" to "Port" and made it use any device (i.e.: a complete path must be supplied) and made it assume that the device is a port (termios.h API).
* Fixed a compilation warning.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7167 a95241bf-73f2-0310-859d-f6bbb57e9c96


# abf44d1a 02-Mar-2004 Waldemar Kornewald <wkornew@nowhere.fake>

Some changes I did a long time ago. I think this also contains a fix for the last dead-lock I could find.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6857 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 5a483e4d 06-Feb-2004 Waldemar Kornewald <wkornew@nowhere.fake>

Fixed a couple of possible dead-locks.
Fixed some minor bugs.
PPPoE: added experimental support for AccessConcentrator and ServiceName settings.
Changed libppp to import strlcat.c from libroot instead of duplicating code.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6511 a95241bf-73f2-0310-859d-f6bbb57e9c96


# f9ad2df8 24-Jan-2004 Waldemar Kornewald <wkornew@nowhere.fake>

Added profile and interface naming support.
Added 'K' prefix to all kernel classes to resolve naming issue with doxygen.
Began some small doxygen comments.
Minor changes.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6282 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 6cfb4dca 19-Jan-2004 Waldemar Kornewald <wkornew@nowhere.fake>

Replaced all printf and spawn_thread functions with their kernel counterparts.
IPCP: changed route initialization a little bit. Still cannot remove default route correctly.
Renamed interface_id to ppp_interface_id.
Some minor changes.
Worked on libppp.a (userland PPP library).


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6159 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 86c13dda 05-Jan-2004 Waldemar Kornewald <wkornew@nowhere.fake>

Yeah! It finally works! The default route was missing, that was the only problem!
I established a connection with PPPoE and pinged goole and osnews. Net+ loaded half of www.osnews.com but then crashed because of a bug in our DNS resolver.
There is one more bug to fix: our core stack module does not remove the routes when an interface is deleted.
Thus, there will always remain the route(s) from the last connection(s).


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5910 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 49c2f687 30-Dec-2003 Waldemar Kornewald <wkornew@nowhere.fake>

Renamed List.h to TemplateList.h (and the class names accordingly). The name conflicted with List.h from the SupportKit and prevented the DialUpPreflet from building (currently not commited).
PPPInterface adds its ID to all reports.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5835 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 1c29a4b0 19-Dec-2003 Waldemar Kornewald <wkornew@nowhere.fake>

Fixed a small bug in Protocol-Field-Compression handling.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5713 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 93a59056 26-Nov-2003 Waldemar Kornewald <wkornew@nowhere.fake>

Fixed bugs.
IPCP: fixed setting of local and peer address (in_control).
Renamed some variables to comply with our style defs.
Fixed a dead-lock in ppp interface and libkernelppp.a.

TODO:
Unfortunately, our stack does not want to ping the remote host. :(
I do not know if this is my fault or a problem with our stack.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5487 a95241bf-73f2-0310-859d-f6bbb57e9c96


# ca43389a 21-Nov-2003 Waldemar Kornewald <wkornew@nowhere.fake>

Some small changes and fixes.

Most important:
Finished IPCP and PAP modules.
Both of them are untested at the moment.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5442 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 4e0ad752 07-Nov-2003 Waldemar Kornewald <wkornew@nowhere.fake>

Fixed many bugs and added debug output.
You can now successfully (dis-)connect to(/from) a PPP server using the PPPoE device module.
To be useful we need the PAP and IPCP modules (in the works).


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5276 a95241bf-73f2-0310-859d-f6bbb57e9c96


# ad0928eb 24-Oct-2003 Waldemar Kornewald <wkornew@nowhere.fake>

Allow to build as userland modules.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5150 a95241bf-73f2-0310-859d-f6bbb57e9c96


# b0bff411 24-Oct-2003 Waldemar Kornewald <wkornew@nowhere.fake>

Bug fixes.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5148 a95241bf-73f2-0310-859d-f6bbb57e9c96


# e7452421 23-Oct-2003 Waldemar Kornewald <wkornew@nowhere.fake>

Mostly fixes and smaller API changes.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5119 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 92a8026e 02-Oct-2003 Waldemar Kornewald <wkornew@nowhere.fake>

As the netstack has a bug I cannot work on the interface module before this is fixed. So I changed the API of the libkernelppp.a (although, this was planned for a later release).
PPPEncapsulator was removed. PPPProtocol is now a protocol and an encapsulator.
PPPDevice, PPPProtocol, and PPPInterface derive from PPPLayer. This base class simplifies the packet passing process and gives PPPDevice more flexibility as it now can add layers between itself and PPPInterface (which was not possible before). This feature will probably be used by the HDLC framing module.
Also, PPPProtocol will always send to the next layer which might either be another protocol, an encapsulator protocol, or the PPPInterface. No distinction is necessary anymore.

This all reduced the list template usage and made some methods simpler.
With this step I could reduce the size of the libkernelppp.a binary from >200K to 143K.

Now, I will go hunting bugs! :)


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4928 a95241bf-73f2-0310-859d-f6bbb57e9c96


# de2f76e1 22-Sep-2003 Waldemar Kornewald <wkornew@nowhere.fake>

Moved libkernelppp.a to add-ons/kernel/network/ppp/shared.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4788 a95241bf-73f2-0310-859d-f6bbb57e9c96


# fc1cf1a3d24bc28201c314c56be8d2816550f3f6 26-Mar-2007 Axel Dörfler <axeld@pinc-software.de>

Style cleanup, patch by Vasilis Kaoutsis - thanks!


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20430 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 2f13f213de8e2b44640b88a2b3d42ed921f637cb 16-Jul-2006 Waldemar Kornewald <wkornew@nowhere.fake>

* Made the PPP code more single-threaded.
* Removed ppp_up code.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18161 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 758b1d0e05fe1042cce6e00d194a147802d4f9be 12-Nov-2005 Ingo Weinhold <ingo_weinhold@gmx.de>

Fixes that make Haiku build with gcc 4. Mainly out of the following
categories:
* Missing includes (like <stdlib.h> and <string.h>).
* Linking against $(TARGET_LIBSTDC++) instead of libstdc++.r4.so.
* Local variables shadowing parameters.
* Default parameters in function definitions (as opposed to function
declarations).
* All C++ stuff (nothrow, map, set, vector, min, max,...) must be imported
explicitly from the std:: namespace now.
* "new (sometype)[...]" must read "new sometype[...]", even if sometype is
something like "const char *".
* __FUNCTION__ is no longer a string literal (but a string expression), i.e.
'printf(__FUNCTION__ ": ...\n")' is invalid code.
* A type cast results in a non-lvalue. E.g. "(char *)buffer += bytes"
is an invalid expression.
* "friend class SomeClass" only works when SomeClass is known before.
Otherwise the an inner class with that name is considered as friend.
gcc 4 is much pickier about scopes.
* gcc 4 is generally stricter with respect to type conversions in C.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14878 a95241bf-73f2-0310-859d-f6bbb57e9c96


# a89ad654b05396249aa61a51c2ec2441e3c111b9 12-Oct-2005 Waldemar Kornewald <wkornew@nowhere.fake>

Thank you, Kristian Knuechel, for reporting a bug (now fixed).
Fixed the build.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14359 a95241bf-73f2-0310-859d-f6bbb57e9c96


# abdb7d1abbf1686ecb8f7132e576d332f6cc01ed 10-Oct-2005 Waldemar Kornewald <wkornew@nowhere.fake>

- updated email-address
- removed profiles, ppp_up, and some TODOs
- simplified KPPPReportManager and reports API, KPPPInterface::Up()+Down(), and PPPInterfaceListener (also removed some features from the last one)
- KPPPInterface now sends the last PPP_CONNECTION_REPORT message to every newly registered report receiver
- added net_server to the build, but removed old net_server testing-stuff

all changes are completely untested


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14338 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 484a5f0ec2a2657494fdb86a2a5d96f3d01f9973 12-Jan-2005 Waldemar Kornewald <wkornew@nowhere.fake>

Fixed some stupid bugs. Added atomic.S (only atomic_xxx64 functions). This will be removed later because Haiku has it built-in.
Added some little functions.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10691 a95241bf-73f2-0310-859d-f6bbb57e9c96


# e91b73741246bd6859046aac533269726d8c485a 27-Dec-2004 Waldemar Kornewald <wkornew@nowhere.fake>

Implemented support for default interface and ConnectOnDemand within core. IPCP will probably need more tweaking, did not have a look at that.
Interface statistics are now maintained.
If I did not forget anything the core stack is now feature-complete.
Only ppp_up must be finished, bugs and hacks found, and modem support added; that's it for R1, I hope.
Everyting untested!


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10541 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 0cbb739d3b656a76c5c1249b4d0e76bcba81836c 20-Dec-2004 Waldemar Kornewald <wkornew@nowhere.fake>

Renamed "Dial" to "Connect" (only modems dial).
Removed DialOnDemand settings key.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10496 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 84b580c425e26370792255dbb5e1879250434372 20-Nov-2004 Waldemar Kornewald <wkornew@nowhere.fake>

DialOnDemand will be handled differently. Instead of setting it manually in the prefs we have one default interface. Still not finished.
Moved ppp_up code to KPPPManager.
Experimenting with IPCP DialOnDemand support.
Many changes I do not remember.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10117 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 8604895e66c642880a413bf5820ff9cfd40d2a1f 02-Jun-2004 Niels Sascha Reedijk <niels.reedijk@gmail.com>

Fix doxygen output


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7734 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 3f3689bb79f1fa6e5bf21e925e17463016c3372e 01-Jun-2004 Waldemar Kornewald <wkornew@nowhere.fake>

Finished doxygen comments for the PPP API.
Minor changes to simplify PAP authenticator.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7730 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 13013331d0ead841705a7f4e458b972c76aee627 19-May-2004 Waldemar Kornewald <wkornew@nowhere.fake>

Added *many* Doxygen comments. More will follow. Documentation is no fun at all, really.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7617 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 25ae6950d9974a8305087e5fd6160aadc58685a8 15-Apr-2004 Waldemar Kornewald <wkornew@nowhere.fake>

Changed the way IdleSince is updated.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7210 a95241bf-73f2-0310-859d-f6bbb57e9c96


# ce0b86e9ddb0d244e360d7bf25c3126c9ba66004 05-Apr-2004 Waldemar Kornewald <wkornew@nowhere.fake>

* IPCP: I think this fixed the default route bug. At least it does not crash anymore.
* PPP stack: Fixed a bug that was introduced with the settings_tools change.
* Modem: Renamed "Interface" to "Port" and made it use any device (i.e.: a complete path must be supplied) and made it assume that the device is a port (termios.h API).
* Fixed a compilation warning.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7167 a95241bf-73f2-0310-859d-f6bbb57e9c96


# abf44d1a2b878b33fcf39a6cf0d0b1625d78edfe 02-Mar-2004 Waldemar Kornewald <wkornew@nowhere.fake>

Some changes I did a long time ago. I think this also contains a fix for the last dead-lock I could find.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6857 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 5a483e4d35557e2c0803bc8a8b091beaffdc8d26 06-Feb-2004 Waldemar Kornewald <wkornew@nowhere.fake>

Fixed a couple of possible dead-locks.
Fixed some minor bugs.
PPPoE: added experimental support for AccessConcentrator and ServiceName settings.
Changed libppp to import strlcat.c from libroot instead of duplicating code.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6511 a95241bf-73f2-0310-859d-f6bbb57e9c96


# f9ad2df864f15e206e629cc58bc9d4deb2935f12 24-Jan-2004 Waldemar Kornewald <wkornew@nowhere.fake>

Added profile and interface naming support.
Added 'K' prefix to all kernel classes to resolve naming issue with doxygen.
Began some small doxygen comments.
Minor changes.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6282 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 6cfb4dcac25af9c27f1b69ea71ba47d12e1c64fb 19-Jan-2004 Waldemar Kornewald <wkornew@nowhere.fake>

Replaced all printf and spawn_thread functions with their kernel counterparts.
IPCP: changed route initialization a little bit. Still cannot remove default route correctly.
Renamed interface_id to ppp_interface_id.
Some minor changes.
Worked on libppp.a (userland PPP library).


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6159 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 86c13dda5a831b614ef044139c2e89f4f3352621 05-Jan-2004 Waldemar Kornewald <wkornew@nowhere.fake>

Yeah! It finally works! The default route was missing, that was the only problem!
I established a connection with PPPoE and pinged goole and osnews. Net+ loaded half of www.osnews.com but then crashed because of a bug in our DNS resolver.
There is one more bug to fix: our core stack module does not remove the routes when an interface is deleted.
Thus, there will always remain the route(s) from the last connection(s).


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5910 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 49c2f6870f654194c36d2562ffde3b35903c79f4 30-Dec-2003 Waldemar Kornewald <wkornew@nowhere.fake>

Renamed List.h to TemplateList.h (and the class names accordingly). The name conflicted with List.h from the SupportKit and prevented the DialUpPreflet from building (currently not commited).
PPPInterface adds its ID to all reports.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5835 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 1c29a4b0549f8bf4b07b2101f4751c8b13b19be1 19-Dec-2003 Waldemar Kornewald <wkornew@nowhere.fake>

Fixed a small bug in Protocol-Field-Compression handling.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5713 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 93a59056e2b575c038d74055e4c9b865596364a8 26-Nov-2003 Waldemar Kornewald <wkornew@nowhere.fake>

Fixed bugs.
IPCP: fixed setting of local and peer address (in_control).
Renamed some variables to comply with our style defs.
Fixed a dead-lock in ppp interface and libkernelppp.a.

TODO:
Unfortunately, our stack does not want to ping the remote host. :(
I do not know if this is my fault or a problem with our stack.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5487 a95241bf-73f2-0310-859d-f6bbb57e9c96


# ca43389a750b879b6e3bcabc6c3913fa33e4a3ad 21-Nov-2003 Waldemar Kornewald <wkornew@nowhere.fake>

Some small changes and fixes.

Most important:
Finished IPCP and PAP modules.
Both of them are untested at the moment.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5442 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 4e0ad75221194c01b01ad7f13afe0a7aa6256a83 07-Nov-2003 Waldemar Kornewald <wkornew@nowhere.fake>

Fixed many bugs and added debug output.
You can now successfully (dis-)connect to(/from) a PPP server using the PPPoE device module.
To be useful we need the PAP and IPCP modules (in the works).


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5276 a95241bf-73f2-0310-859d-f6bbb57e9c96


# ad0928ebe3c884ffe90f09b0f8db8dd95a42a735 24-Oct-2003 Waldemar Kornewald <wkornew@nowhere.fake>

Allow to build as userland modules.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5150 a95241bf-73f2-0310-859d-f6bbb57e9c96


# b0bff411f1dabdfeec2ac95592eaec4ed46a6883 24-Oct-2003 Waldemar Kornewald <wkornew@nowhere.fake>

Bug fixes.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5148 a95241bf-73f2-0310-859d-f6bbb57e9c96


# e7452421930cdbbd8c549e77bbedbdc52472c78d 23-Oct-2003 Waldemar Kornewald <wkornew@nowhere.fake>

Mostly fixes and smaller API changes.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5119 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 92a8026e02acf7895727ebda87c3bebacd3fa082 02-Oct-2003 Waldemar Kornewald <wkornew@nowhere.fake>

As the netstack has a bug I cannot work on the interface module before this is fixed. So I changed the API of the libkernelppp.a (although, this was planned for a later release).
PPPEncapsulator was removed. PPPProtocol is now a protocol and an encapsulator.
PPPDevice, PPPProtocol, and PPPInterface derive from PPPLayer. This base class simplifies the packet passing process and gives PPPDevice more flexibility as it now can add layers between itself and PPPInterface (which was not possible before). This feature will probably be used by the HDLC framing module.
Also, PPPProtocol will always send to the next layer which might either be another protocol, an encapsulator protocol, or the PPPInterface. No distinction is necessary anymore.

This all reduced the list template usage and made some methods simpler.
With this step I could reduce the size of the libkernelppp.a binary from >200K to 143K.

Now, I will go hunting bugs! :)


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4928 a95241bf-73f2-0310-859d-f6bbb57e9c96


# de2f76e1fee624debe0d0af54ae6c9b18e9c1994 22-Sep-2003 Waldemar Kornewald <wkornew@nowhere.fake>

Moved libkernelppp.a to add-ons/kernel/network/ppp/shared.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4788 a95241bf-73f2-0310-859d-f6bbb57e9c96