Commit Graph
97 Commits
Author SHA1 Message Date
Waldemar Kornewald 7854985f97 Fixed userland net_stack_tester (I hope you don't mind, Philippe ;).
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6162 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-01-19 22:59:55 +00:00
Waldemar Kornewald aac3d01fac Renamed interface_id to ppp_interface_id.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6160 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-01-19 22:48:52 +00:00
Waldemar Kornewald 6cfb4dcac2 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
2004-01-19 22:47:43 +00:00
Waldemar Kornewald 6c54c57f07 First attempt at fixing the if_detach code.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6153 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-01-19 21:41:45 +00:00
Waldemar Kornewald cc14c99624 I like it better this way. dprintf is not available in userland. ;)
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5980 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-01-07 14:58:47 +00:00
Waldemar Kornewald 86c13dda5a 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
2004-01-05 13:34:11 +00:00
Waldemar Kornewald 6a70da44dc After many checks it seems that Jam does not want those changes. :(
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5879 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-01-02 13:05:04 +00:00
Waldemar Kornewald b66e4cd306 Removed unneeded dependency from Jamfile.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5878 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-01-02 13:03:31 +00:00
Waldemar Kornewald 20d09e03be Simplified Jamfiles a little bit.
Fixed a warning in modem.
Fixed a small bug in IPCP.
Added empty PPPInterfaceListener class (needed for DialUpPreflet and Deskbar add-on).


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5877 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-01-02 12:45:23 +00:00
Waldemar Kornewald 01b2564600 Removed uneeded chars and added modem to userland stack PPP add-ons.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5876 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-01-02 12:41:14 +00:00
Waldemar Kornewald ca1e03bddc Added modem to PPP devices (in NetworkKit target).
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5875 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-01-02 12:38:53 +00:00
Waldemar Kornewald 49c2f6870f 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
2003-12-30 17:11:09 +00:00
Waldemar Kornewald 8dad9b1eb2 Added modem driver (completely untested, currently no support for settings speed because modem API is missing).
Some minor changes.
Added TODO file to almost all modules.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5768 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-12-27 14:27:55 +00:00
Waldemar Kornewald 153f2c3012 Fixed compilation errors.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5714 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-12-19 15:53:19 +00:00
Waldemar Kornewald 1c29a4b054 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
2003-12-19 11:52:31 +00:00
Waldemar Kornewald 93a59056e2 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
2003-11-26 20:16:10 +00:00
Waldemar Kornewald 280533f33d Fixed a bug in pppconfig and made some other changes.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5486 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-11-26 20:12:31 +00:00
Waldemar Kornewald ef0e9a6aba Added IPCP and PAP to Networking-Kit pseudo-target.
Added some comments.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5485 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-11-26 20:11:32 +00:00
Waldemar Kornewald d5cd5d63ff Added IPCP and PAP modules to test suite.
NOTE: To make PPP usable with the test suite I will need to use a shared memory area to be able to pass structures to the ppp module.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5443 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-11-22 12:30:59 +00:00
Waldemar Kornewald ca43389a75 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
2003-11-22 12:28:32 +00:00
Waldemar Kornewald 4e0ad75221 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
2003-11-07 15:47:45 +00:00
Waldemar Kornewald 7072f4d0dc Fixed debug output.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5275 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-11-07 15:43:30 +00:00
Waldemar Kornewald e8e6c3e8ad Changed Jamfiles to use new <> (namespace or how was it called?) feature, so libuserlandppp.a is not added to distro/xxx/develop.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5274 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-11-07 15:41:53 +00:00
Waldemar Kornewald cdc2ad89b1 Changes for kernel land (added set_sem_owner and kernel_cpp.h/cpp).
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5161 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-10-25 13:24:59 +00:00
Waldemar Kornewald a10a3d49d6 Fixed BUG in FindUnit() and Register/UnregisterInterface().
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5160 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-10-25 13:00:28 +00:00
Waldemar Kornewald 20826c8ed2 Fixed BUG in if_detach.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5159 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-10-25 12:58:49 +00:00
Waldemar Kornewald 0868fe5619 Added an error report.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5158 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-10-25 10:14:51 +00:00
Waldemar Kornewald 52fad5f56b Use the NET_STACK_DRIVER_PATH environment variable if available.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5157 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-10-25 10:13:51 +00:00
Waldemar Kornewald 95cb1c609a PPPoE should not go into ppp/shared, but ppp.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5154 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-10-25 08:30:43 +00:00
Waldemar Kornewald 5c9e6a3953 Added libkernelppp.a (currently named libuserlandppp.a), PPP, and PPPoE to userland test build.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5153 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-10-25 08:26:19 +00:00
Waldemar Kornewald 8f79376c49 Allow to build as userland add-on.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5151 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-10-24 21:28:10 +00:00
Waldemar Kornewald ad0928ebe3 Allow to build as userland modules.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5150 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-10-24 21:18:53 +00:00
Waldemar Kornewald cf3ba6b414 Bug fixes and some small changes.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5149 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-10-24 20:10:02 +00:00
Waldemar Kornewald b0bff411f1 Bug fixes.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5148 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-10-24 20:08:56 +00:00
Waldemar Kornewald 152327e1a6 Changes for net module control() support.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5124 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-10-23 18:08:53 +00:00
Waldemar Kornewald b82b832e8c Added ppp, pppoe, and pppconfig to NetworkingKit.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5123 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-10-23 18:04:33 +00:00
Waldemar Kornewald 79d2631976 Added pppconfig bin command to the build.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5122 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-10-23 18:03:42 +00:00
Waldemar Kornewald 5a4503c3ff Added PPPoE module.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5121 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-10-23 18:01:36 +00:00
Waldemar Kornewald 4fbbad3009 The beginnings of libppp.a. This is a userland library to talk to the PPP stack. It hides the ioctl() stuff from the user.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5120 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-10-23 17:59:38 +00:00
Waldemar Kornewald e745242193 Mostly fixes and smaller API changes.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5119 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-10-23 17:56:14 +00:00
Waldemar Kornewald f378b1b9c8 BUG fix.
Small changes for PPP.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5118 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-10-23 17:53:29 +00:00
Waldemar Kornewald d7fa7da88b Some fixes and small changes.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5117 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-10-23 17:51:49 +00:00
Waldemar Kornewald ab5bf14914 Added support for PPPoE.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5116 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-10-23 17:51:20 +00:00
Waldemar Kornewald 7f015ac671 Forgot to commit changes for control() support and some fixes.
Also added header for PPPoE support in ethernet module.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5115 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-10-23 17:50:45 +00:00
Waldemar Kornewald 6b6c29afe6 Fixed flags printing.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5091 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-10-20 20:45:48 +00:00
Waldemar Kornewald 8c911f6ce6 h_errno is now declared in each file that uses it.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5070 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-10-17 13:57:33 +00:00
Waldemar Kornewald 0fe962a8b1 Last modification was wrong. The declaration of h_errno was needed to compile libnet.so.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5058 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-10-16 18:45:59 +00:00
Waldemar Kornewald 0fc3ae8c5c Finished PPP interface manager module.
TODO:
 - IPCP protocol module
 - PAP authentication module
 - PPPoE device module
 - pppdial cmd-line app including needed net_stack_driver changes for control() function support
 - tests, tests, tests :))


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5040 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-10-15 16:01:40 +00:00
Waldemar Kornewald 77f15b8315 Implemented some methods.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5031 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-10-14 13:48:41 +00:00
Waldemar Kornewald d6a3da1874 Initial commit of very skeletal ppp interface module.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5030 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-10-14 12:55:28 +00:00
Waldemar Kornewald b80f17599b Added control() function (as NULL pointer).
Fixed warnings.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5029 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-10-14 12:24:50 +00:00
Waldemar Kornewald 5a10f7ebb4 Added control() function (as NULL pointer).
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5028 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-10-14 12:24:28 +00:00
Waldemar Kornewald d73f313295 Added control() function (as NULL pointer).
Fixed some warnings.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5027 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-10-14 12:23:57 +00:00
Waldemar Kornewald eb5d50b665 Added support for controlling modules.
Fixed warnings.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5026 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-10-14 12:23:09 +00:00
Waldemar Kornewald f5ef266db8 Replaced direct access to max_xxx variables with get/set_max_xxx.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5025 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-10-14 10:15:31 +00:00
Waldemar Kornewald 13b219e125 Added get/set_max_xxx functions.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5024 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-10-14 10:14:57 +00:00
Waldemar Kornewald 917d6a9d1f Removed declaration of h_errno variable.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5023 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-10-14 10:12:04 +00:00
Waldemar Kornewald e3cdd30a7a Quick and dirty fix of the DNS resolver bug. Now "ping localhost" works again! :))
The problem was that netdb.h defined a macro that always replaced h_errno with a function call so that libnet.so failed when res_query (and all other functions using h_errno, but this is where the bug occured for me) tried to assign a new value to h_errno which of course failed because it was actually assigned to the return value of _h_errnop().


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5010 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-10-13 14:42:18 +00:00
Waldemar Kornewald 92a8026e02 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
2003-10-02 09:18:47 +00:00
Waldemar Kornewald bb451b9be0 Added empty jamfile for ppp interface manager.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4789 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-09-22 13:23:58 +00:00
Waldemar Kornewald de2f76e1fe 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
2003-09-22 13:21:38 +00:00
Waldemar Kornewald e336671a9b Moved libkernelppp.a to add-ons/kernel/network/ppp/shared.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4787 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-09-22 13:16:14 +00:00
Waldemar Kornewald 06c8940fcf Finished authenticator support.
libkernelppp.a should be feature-complete now. As it is completely untested we could call it _very_ early alpha stage.
The next task will be to add an interface module for our netstack. Some ioctls will be handled by PPPInterface, so libkernelppp.a will be modified in the next few days/weeks to support these ioctls.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4767 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-09-19 17:53:09 +00:00
Waldemar Kornewald c2a58f5169 Added MRU option handler.
Fixed wrong definition of MRU.
Added the StackControl() method to all handlers (expect PPPDevice) and changed how the netstack ioctls are passed to the handlers.
Added a template for iterating over indexed lists (needed methods: CountItems() and ItemAt()). This simplified StackControlEachHandler() a little bit.
Some minor changes.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4673 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-09-14 13:24:24 +00:00
Waldemar Kornewald 7ff713dadd Replaced some pointers with references.
Added support for Protocol-Field-Compression including the needed handler.
Added initial support for ppp_manager's ioctl() function (currently, PPPInterface does not handle any ioctls). These calls are routed to all handlers, too (if PPPInterface did not handle the ioctl).
Changed naming of local states and report codes (authentication, etc.). These now have "Local"/"LOCAL" in their name.
Some minor changes.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4672 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-09-13 17:57:12 +00:00
Waldemar Kornewald 53a75b6389 Added some extended support for DialOnDemand.
Fixed missing ifnet flags.
PPPStateMachine: replaced nearly all pointers to PPPInterface objects with references.
PPPInterface: added delay to Redial() method (will be used to implement DialRetryDelay, too).
PPPLCP: changed the way Receive() handles LCPExtensions and added code for removing padding from packet.
PPPOptionHandler: added code and only one OptionHandler per code is allowed from now on.
Added some changes to support authenticators.

TODO:
- add DialRetryDelay
- maybe change how StateMachine iterates over OptionHandlers (as they have a code field now)
- commit changes for PFC support and PFC, MRU, and authentication handler


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4661 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-09-12 15:27:29 +00:00
Waldemar Kornewald bc981e9a90 Removed BLocker implementation from PPP and added disk_device_manager to source search path so that we reuse the existing files.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4526 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-09-07 17:16:27 +00:00
Waldemar Kornewald 5e97ad44cc Forgot to test if it builds. :)
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4520 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-09-06 23:58:58 +00:00
Waldemar Kornewald 283ad63871 Added some helper functions and improved PPPLCPExtension handling.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4519 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-09-06 23:54:35 +00:00
Waldemar Kornewald b8561cdd29 Added PPPLCPExtension (allows additional codes for LCP).
Added Control() op codes for report enabling/disabling.
Fixed memory leaks in StateMachine and LCP (packets were not freed).
Some minor changes.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4514 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-09-06 17:13:51 +00:00
Waldemar Kornewald a602502a7e Finished first set of needed features (tests will follow as soon as the needed kernel modules are available).
Next step will be to add:
- Protocol-Field-Compression support (including PFC handler)
- MRU option handler
- ?simple authentication option handler (helper class)?


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4513 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-09-06 01:00:12 +00:00
Waldemar Kornewald d3b140a64c Splitted implementation into kernel space (K-prefix) and user space headers. The former will become private headers while the latter will be moved into the headers/os/ hierarchie (where exactly is uncertain at the moment).
Added some control/ioctl ops.
Moved KPPPUtils.h to headers.
Limited the name length of each handler to a maximum of 255 characters (not including the zero-byte).
Removed PPP_ACTION from (K)PPPDefs.h.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4502 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-09-04 19:40:36 +00:00
Waldemar Kornewald 5a78bc1802 Added newline at the end of file.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4500 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-09-04 14:28:23 +00:00
Waldemar Kornewald 2ad1aefdd6 Added an emtpy line to the jamfiles.
Replaced spawn_kernel_thread with spawn_thread (KernelExport.h will do the distinction between kernel mode and userland).
Changed PPPLCP::Send().


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4468 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-09-03 14:12:33 +00:00
Waldemar Kornewald 0d80a4595f Added libkernelppp.a to the build (although it does not build yet, I need help to fix the problem).
Fixed all warnings and errors (except from the one mentioned above).


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4437 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-09-01 16:29:24 +00:00
Waldemar Kornewald 62315ec459 Fixed compilation warnings.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4436 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-09-01 16:09:51 +00:00
Waldemar Kornewald 345d3d7d0b Fixed a spelling error.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4420 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-08-31 16:05:23 +00:00
Waldemar Kornewald 990e20ecdf Implemented nearly everything.
TODO:
- implement Control() methods
- write an authentication option handler
- write an MRU option handler

I will need to write the jamfile...


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4415 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-08-30 12:40:25 +00:00
Waldemar Kornewald c9aa6219cc Forgot to remove AccessHelper.h. :)
The manager will take care of all accessing threads.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4401 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-08-29 12:59:28 +00:00
Waldemar Kornewald 3118bf2206 Finished:
- PPPDevice
 - PPPEncapsulator
 - PPPOptionHandler
 - PPPProtocol

Added SendCodeReject implementation (though, I am not sure if it really works because I am not familiar with mbufs).

Fixed some bugs.
Changed the manager interface (there are no pointers to classes anymore).
Some minor changes.

TODO for libkernelppp.a:
- finish PPPLCP
- finish PPPConfigurePacket


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4400 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-08-29 12:57:59 +00:00
Waldemar Kornewald 8758b5ade6 The code looks much nicer with a copyright message. ;)
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4372 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-08-25 09:57:53 +00:00
Waldemar Kornewald 5c7a44d436 Added empty .cpp files for the remaining classes.
Finished Down().
Added input queue to PPPInterface.
Added initial timeout handling.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4370 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-08-24 19:43:20 +00:00
Waldemar Kornewald 103501d9d7 Some comments were not understandable.
Added a new case when to destroy interface (when Up() failes and DialOnDemand is disabled).
Forgot some to remove fUpThread in Up().
Changed UpFailedEvent() so that it pretends a connection-lost event (so we can try to redial).
Added ResetOptionHandlers() and DownProtocols/Encapsulators().


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4351 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-08-20 11:41:24 +00:00
Waldemar Kornewald 3c39df3d0b Finished Up().
Redial needs one additional case to be complete.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4310 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-08-19 10:40:45 +00:00
Waldemar Kornewald aa4dee1bda Some minor changes.
Started to get familiar with the code, again. ;)
Some _very_ small work on Up().


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4305 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-08-18 11:51:27 +00:00
Waldemar Kornewald 4d1fb4b669 PPPReportManager had some old port code.
Added checking for sender to report system.
Worked on StateMachine and added cases where the interface should be deleted.
Added some flags (report and protocol) and report codes.
Started implementing Up().
Some minor changes (comments, multilink).


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4108 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-07-27 11:54:35 +00:00
Waldemar Kornewald d7344480f1 Register/UnregisterInterface() are now private.
Moved report code into its own class.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4106 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-07-27 10:03:36 +00:00
Waldemar Kornewald ff3b40e0da Changed the report system to use threads.
Unfortunately I need threads for this (because reports will be used in Up()/Down() and always creating a reply port is not very nice).
Does anyone have a good send/receive_data_etc() implementation? :) I hope our kernel will get that functionality.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4085 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-07-26 18:17:26 +00:00
Waldemar Kornewald cdb26db4b8 Implemented report methods for interface and began first connection reports.
Added some changes.

Next tasks:
Up/Down()
Redial()


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4084 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-07-26 17:34:45 +00:00
Waldemar Kornewald 7335f587be Worked on multilink support.
Event/action code should be finished soon.

TODO for libkernelppp.a:
- reports
- redial
- PPPInterface::Up()/Down()
- all other classes (not very much work)
- LCP protocol
- MRU and protocol-field-compression (needs some addition to PPPInterface, too) option handlers


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4071 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-07-25 11:43:22 +00:00
Waldemar Kornewald ec3447e61f Worked on events and actions.
StateMachine now waits until all protocols/encapsulators have finished going up before entering next phase.
Added StateMachine methods to support main interfaces (multilink).


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4055 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-07-24 12:00:53 +00:00
Waldemar Kornewald 4c7e909c5f Renamed PPPFiniteStateMachine into PPPStateMachine (the name was tooooo long).
Added some more events.
Added UpRequested methods to protocols/encapsulators.
Worked on actions and events. Also added some checks.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4054 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-07-23 13:03:35 +00:00
Waldemar Kornewald 7aa79f33d8 Moved OptionHandlers to LCP (where they actually belong).
Added some initial code to get general (as far as possible) multilink support (the modules must be aware of whether they belong to the device or to the bundle).
PPPDevice now reports speed and number of bytes in the output queue.
Removed PPP_CTOR_DTOR_PHASE. Modules can be loaded in PPP_DOWN_PHASE.
Worked on events and actions.
Some minor changes/fixes.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4008 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-07-17 16:46:08 +00:00
Waldemar Kornewald b912b1e24f FSM will be renamed to FiniteStateMachine. I will commit the new file later because I am working on it and when I "co" the OBOS source it gets it always comes back again. ;)
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4007 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-07-17 16:34:13 +00:00
Waldemar Kornewald 06a35e5e82 Added some comments.
Added lcp_packet structure.
Changed reference style.
Changed some names.
Added general events.
Completed most events.
Copy constructors and assign operators are now private (just to be on the safe side ;).
SendToDevice() now checks if the packet is small enough.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3930 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-07-10 11:08:44 +00:00
Waldemar Kornewald 0491e1650c Initial checkin of ppp stack.
Still far from being complete.
Comments are welcome.

In brief: Stack will be modular and written in C++.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3875 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-07-06 16:46:29 +00:00
Waldemar Kornewald e19f10fab7 Corrected get_ip_id() so that it uses atomic_add() instead of a semaphore.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3733 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-29 15:47:40 +00:00