summaryrefslogtreecommitdiff
path: root/lib/conn.c
Commit message (Collapse)AuthorAgeFilesLines
* Merge branch 'rename-packet-to-message' into libradsec-user-dispatchLinus Nordberg2013-01-241-29/+29
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: lib/include/radsec/radsec.h Original commit message (1e3a2613): Rename most 'package' to 'message'. RADIUS (RFC2865) is defined to be transported over UDP so the term "radius packet" makes a lot of sense. RADIUS/TCP (RFC6613) and RADIUS/TLS (RFC6614), a.k.a. RadSec, use stream transport protocols though. The term "message" doesn't imply any kind of transport -- a message can be sent using datagrams as well as in a stream. This (large) commit changes 'package' to 'message' where it makes sense. It does not touch the 'radius' subdirectory. It includes preprocessor directives (#define) to make the public interface compatible with previous releases of the library.
| * Rename most 'package' to 'message'.Linus Nordberg2013-01-241-29/+29
| | | | | | | | | | | | | | | | | | | | | | | | | | RADIUS (RFC2865) is defined to be transported over UDP so the term "radius packet" makes a lot of sense. RADIUS/TCP (RFC6613) and RADIUS/TLS (RFC6614), a.k.a. RadSec, use stream transport protocols though. The term "message" doesn't imply any kind of transport -- a message can be sent using datagrams as well as in a stream. This (large) commit changes 'package' to 'message' where it makes sense. It does not touch the 'radius' subdirectory. It includes preprocessor directives (#define) to make the public interface compatible with previous releases of the library.
* | user dispatch WIP 0Linus Nordberg2013-01-241-1/+17
|/
* Rename rs_packet_flags members.Linus Nordberg2013-01-241-3/+3
| | | | | | | | | Uppercase to make them appear as the constants they are, as opposed to variables. Remove 'flag' suffix, typically used for variables. Spell out HEADER.
* Rename COPYING -> LICENSE.Linus Nordberg2012-12-191-1/+1
| | | | And distribute LICENSE and HACKING.
* Merge libradsec-new-client.Linus Nordberg2012-04-271-0/+2
|\
| * port to new RADIUS client libraryLuke Howard2011-11-141-0/+2
| |
* | Missing response packet in rs_conn_receive_packet doesn't have to be a bug.Linus Nordberg2012-04-251-1/+4
| |
* | Fix a comment.Linus Nordberg2012-04-251-1/+1
| |
* | Fix a typo in a comment.Linus Nordberg2011-12-141-1/+1
|/
* Don't touch TLS specific things w/o RS_ENABLE_TLS.Linus Nordberg2011-03-151-0/+2
|
* [TLS] Do free SSL and SSL_CTX objects.Linus Nordberg2011-03-141-3/+6
|
* [UDP] Free the event base _after_ freeing the read and write events.Linus Nordberg2011-03-141-2/+2
| | | | Duh!
* Don't free connection on error, just close it.Linus Nordberg2011-03-141-3/+4
|
* [UDP] Free read/write events when destroying connection.Linus Nordberg2011-03-131-0/+4
|
* Formatting changes.Linus Nordberg2011-03-131-20/+8
|
* Do free the connection object.Linus Nordberg2011-03-111-0/+2
|
* Get UDP working.Linus Nordberg2011-03-091-5/+9
| | | | | | | | | | | | | | | | For UDP, activate retransmit timer before receiving rather than sending makes the event loop break nicely after sending a message (which is important for blocking mode). Not quite sure that this is really accurate wrt to retransmission timing though but it should do for now. For UDP, set the user_data member for the read callback in rs_conn_receive_packet -- the one from udp_init() doesn't do much good now. For UDP, implement receiving message. Add compat_recv().
* Remove superfluous assignment.Linus Nordberg2011-03-091-1/+0
| | | | This is done in rs_packet_create().
* Add retransmission timer support (UDP).Linus Nordberg2011-03-091-0/+17
|
* Rename and move around a few helper functions.Linus Nordberg2011-03-091-40/+1
|
* Timeout implemented in request objects, supported by TCP.Linus Nordberg2011-03-081-0/+8
| | | | TODO: UDP.
* Don't return -1 to user but rather an error code.Linus Nordberg2011-03-081-1/+1
| | | | NOTE: Changes rs_conn_receive_packet() and rs_packet_send() only.
* Move verification of response packets up to a level where it makes sense.Linus Nordberg2011-03-071-22/+51
| | | | | | | | | | | | | | | | | | | | | Replace the user_dispatch_flag on connections with conn_user_dispatch_p(). Remove the 'original' member from packet and instead have an upper layer verify. Rename packet valid_flag --> received_flag to reflect that we don't verify. Move _close_conn() --> conn_close(). Move packet flags into a single unsigned int, for portability. (_read_packet): Don't verify packet. (rs_conn_receive_packet): Don't touch PKT_OUT if there isn't a packet. (rs_conn_receive_packet): Verify packet using packet_verify_response().
* Restructure code, moving most code out of packet.cLinus Nordberg2011-03-061-1/+92
| | | | Also, move copyright notice out of COPYING and into every file.
* UDP w/o bufferevents, part 1.Linus Nordberg2011-03-061-8/+6
| | | | Sending, no retransmitting and no receiving.
* Error handling cleanup 2.Linus Nordberg2011-03-011-8/+7
| | | | RSE_NOSYS doesn't need a string.
* Don't have the connection freeing peers -- it's the contexts responsibility.Linus Nordberg2011-03-011-9/+1
| | | | Also, let _rs_peer_destroy() free secret.
* Remove last trace of server and client in API.Linus Nordberg2011-02-281-3/+3
|
* Config file changes and small API changes.Linus Nordberg2011-02-241-21/+40
| | | | | | | | 'timeout' and 'tries' move from 'server' stanza to top. 'tries' is now 'retries'. Moving around in internal data structs, making struct peer strictly config. Bug fixes in configuration code. Adding some more cleanup code, freeing allocated memory (still not done!).
* Improve protocol robustness and invoke user callbacks.Linus Nordberg2011-02-191-5/+46
| | | | | | | | | | | | All aborts are removed, as well as all asserts which aren't programming errors. When an invalid packet is received, the connection is closed, as per draft-ietf-radext-tcp-transport-08 (2.6.4). Use new rs_debug() macro rather than fprintf() for debug printouts. Coding style overhaul.
* Bringing up TLS connections working.Linus Nordberg2010-11-111-1/+6
| | | | | | | NOTE: Clean up of resources not yet sane. Expect resource leakages. NOTE: Most failure cases are not handled properly. With the wind at your back and the sun shining, it might work.
* Move connection related functions to conn.c.Linus Nordberg2010-10-191-0/+141