summaryrefslogtreecommitdiff
path: root/usr.sbin/relayctl
AgeCommit message (Collapse)Author
2011-05-20Concurrent calls of "relayctl show sessions" could crash relayd. FixReyk Floeter
the show sessions handler by implementing it in an asynchronous way. Closes PR 6509 ok pyr@
2011-05-19Fix reload support in relayd(8) by reimplementing large parts of theReyk Floeter
daemon infrastructure. The previous design made it fairly hard to reload the complex data structures, especially relays and protocols. One of the reasons was that the privsep'd relayd processes had two ways of getting their configuration: 1) from memory after forking from the parent process and 2) and (partially) via imsgs after reload. The new implementation first forks the privsep'd children before the parents loads the configuration and sends it via imsgs to them; so it is only like 2) before. It is based on an approach that I first implemented for iked(8) and I also fixed many bugs in the code. Thanks to many testers including dlg@ sthen@ phessler@ ok pyr@ dlg@ sthen@
2011-05-09Reorganize the relayd code to use the proc.c privsep API/commodityReyk Floeter
functions that are based on work for iked and smtpd. This simplifies the setup of privsep processes and moves some redundant and repeated code to a single place - which is always good from a quality and security point of view. The relayd version of proc.c is different to the current version in iked because it uses 1:N communications between processes, eg. a single parent process is talking to many forked relay children while iked only needs 1:1 communications. ok sthen@ pyr@
2010-12-31Add missing #includes instead of assuming that some system header pulls inPhilip Guenthe
the needed bits ok deraadt@, millert@
2010-09-04move some things around to make intentions clear. not really a functionalTed Unangst
change. ok claudio
2010-05-26Move imsg into libutil and add a man page.Nicholas Marriott
Minor bump for libutil. Previous versions of this diff and man page looked at by various people. "you should just commit" deraadt
2010-01-11add "log brief" and "log verbose" to change logging verbosityJonathan Gray
like several other things in the tree. ok reyk@ looks fine claudio@
2009-11-13Don't use [] in function arguments when dealing with arraysJonathan Gray
we don't know the size of, otherwise gcc >= 4 will error. ok markus@ deraadt@
2009-10-22write UNIX-domain in a more consistent way; while here, replace aIgor Sobrado
few remaining ".Tn UNIX" macros with ".Ux" ones. pointed out by ratchov@, thanks! ok jmc@
2009-10-22use the UNIX-related macros (.At and .Ux) where appropriate.Igor Sobrado
ok jmc@
2009-09-01If relayd returned an error don't exit with success. This may help scriptsClaudio Jeker
to recognize when something did not work in a much easier way then parsing the relayctl output. OK reyk@
2009-08-17also report routers and their host states in relayctlReyk Floeter
ok pyr@, jmc@ for man bits
2009-08-07rename 'struct session' to 'struct rsession' because it conflicts withReyk Floeter
another 'struct session' in sys/sysctl.h.
2009-06-054 handed diff with eric:Pierre-Yves Ritschard
Stop pushing event handling in the imsg framework. Instead, provide a small glue layer on top of both imsg and libevent. This finally clearly separates event handling and imsg construction. Sidetrack bonus: remove the mega-ugly hack of having a dummy imsg_event_add stub in relayctl. This will make bgpd (and thus henning) happy. Next up are smtpd and ospfd. ok eric@
2008-12-31an ellipsis allows more than one argument being specified;Igor Sobrado
sync synopsis/usage.
2008-12-05change the way relayd reports check results: instead of logging anReyk Floeter
arbitrary string in debugging mode, it will store an error code (HCE_*) for each host. the error code can be translated to a string (in log.c) for debugging but it will also be passed to relayctl via the control socket. from a user point of view, this will print a human-readable error message in the "relayctl show hosts" output if a host is down because the check failed. the relayctl(8) manpage includes detailed explanations of the error messages including mitigations for the most-common problems. ok jmc@ (manpages) ok phessler@
2008-07-19print the host parent id if availableReyk Floeter
2008-01-31add prefixes to names of structure elements to make it easier to grepThordur I. Bjornsson
for code, next struct session; ok reyk@;
2008-01-31add prefixes to names of structure elements to make it easier to grepReyk Floeter
for code, next struct relay. knf long line fixes will follow later. ok thib@
2007-12-20note that redirections with the sticky-address option will not countReyk Floeter
statistics for new connections with sticky states.
2007-12-20implement statistics for redirections, like the existing statisticsReyk Floeter
for relays. they can be viewed with the new "relayctl show redirects" command. (uses the previous change to pf_table.c to get the statistics) looks good pyr@
2007-12-12various improvements for the relay pages; ok reykJason McIntyre
2007-12-08Rename everything which reffered to services refer to rdr for internalsPierre-Yves Ritschard
(for instance: rename struct service to struct rdr), refer to redirects otherwise (hoststatectl output). ok reyk@
2007-12-08service -> redirectReyk Floeter
ok pyr@
2007-12-08some changes to the relayd.conf configuration language and grammar.Reyk Floeter
the tables will look more like pf tables, it is easier to re-use tables with different options, "services" will become "redirections" (they refer to rdr pf rules), sync configuration directives of redirect (l3, ex-service) relay (l7) sections (for example "virtual host" will become "listen on"), all target definitions will start with "forward to", etc. pp. (see relay.conf(5) and etc/relayd.conf) discussed with pyr and deraadt ok pyr@
2007-12-07adjust the manpages to use "Relay daemon"Reyk Floeter
2007-12-07hoststated gets renamed to relayd. easier to type, and actually saysReyk Floeter
what the daemon does - it is a relayer that pays attention to the status of pools of hosts; not a status checkers that happens to do some relaying
2007-11-24style(9) for includesReyk Floeter
2007-11-23re-implement the "mark" action and document it in the manpage:Reyk Floeter
it is possible to attach a mark to a session based on matching an entity (header, url, cookie, ...) and add conditional action for this mark. it works a bit like the tag/tagged keywords in pf, but i decided to pick a different name to avoid confusion. ok pyr@ gilles@
2007-11-21document hoststatectl poll.Pierre-Yves Ritschard
prompted by reyk@
2007-11-20NULL != NONE (but both equal 0)Pierre-Yves Ritschard
2007-10-19Add the ability to schedule an immediate check through hoststatectl.Pierre-Yves Ritschard
Especially useful when interval is rather long. I was supposed to commit this before 4.2.
2007-10-01Sync .nd with other parts of hoststated, prompted by jmc@Pierre-Yves Ritschard
2007-09-29KNF.Pierre-Yves Ritschard
2007-09-28Correct my mail address.Pierre-Yves Ritschard
2007-09-07add a "show sessions" command to dump the complete list of running relayReyk Floeter
sessions.
2007-09-07simple style change in the switchReyk Floeter
2007-08-02document the reload command.Pierre-Yves Ritschard
2007-06-12reflect msf's changes to the imsg framework in hoststated.Pierre-Yves Ritschard
2007-05-31convert to new .Dd format;Jason McIntyre
2007-05-29allow the control handling code to send messages back to the parent.Pierre-Yves Ritschard
forward IMSG_CTL_RELOAD which ends up not doing anything for now.
2007-05-29teach hoststatectl's parser about reload. the code to handle it isPierre-Yves Ritschard
already there. of course this is a dummy for now.
2007-05-29move struct relay to the runtime + config scheme.Pierre-Yves Ritschard
this time around, include hoststatectl changes too.
2007-05-28Reflect recent hoststated changes into hoststatectlPierre-Yves Ritschard
This unbreaks the tree. Fixed from the depth of the OpenBSD lair.
2007-02-22spacingReyk Floeter
2007-02-22Add layer 7 functionality to hoststated used for layer 7Reyk Floeter
loadbalancing, SSL acceleration, general-purpose TCP relaying, and transparent proxying. see hoststated.conf(5) and my upcoming article on undeadly.org for details. ok to commit deraadt@ pyr@
2007-02-06fix typo.Pierre-Yves Ritschard
ok reyk@
2007-02-06inform hoststatectl monitor of ruleset changes and table syncs.Pierre-Yves Ritschard
ok reyk@
2007-02-03wait for hoststated to become available in monitor mode.Reyk Floeter
ok pyr@
2007-02-01print id name in the monitor output if availableReyk Floeter