OpenBSD CVS

CVS log for src/usr.sbin/relayd/Attic/imsg.c


[BACK] Up to [local] / src / usr.sbin / relayd

Request diff between arbitrary revisions


Default branch: MAIN


Revision 1.32, Wed May 26 16:44:32 2010 UTC (14 years ago) by nicm
Branch: MAIN
CVS Tags: HEAD
Changes since 1.31: +1 -1 lines
FILE REMOVED

Move imsg into libutil and add a man page.

Minor bump for libutil.

Previous versions of this diff and man page looked at by various people.

"you should just commit" deraadt

Revision 1.31 / (download) - annotate - [select for diffs], Wed May 26 13:56:08 2010 UTC (14 years ago) by nicm
Branch: MAIN
Changes since 1.30: +11 -11 lines
Diff to previous 1.30 (colored)

Rename some imsg bits to make namespace collisions less likely buf to
ibuf, buf_read to ibuf_read, READ_BUF_SIZE to IBUF_READ_SIZE.

ok henning gilles claudio jacekm deraadt

Revision 1.30 / (download) - annotate - [select for diffs], Wed Apr 7 18:09:39 2010 UTC (14 years, 2 months ago) by nicm
Branch: MAIN
Changes since 1.29: +2 -2 lines
Diff to previous 1.29 (colored)

Remove XXX comment and just close received fd if calloc() fails.

If this happens the imsg may no longer be usable as there may be queued
messages, but this is a) already the case with the code now, and b)
would be the case if recvmsg() fails anyway, so we can document that -1
from imsg_read() invalidates the struct imsgbuf.

discussed with and ok eric

Revision 1.29 / (download) - annotate - [select for diffs], Sat Aug 8 18:33:40 2009 UTC (14 years, 10 months ago) by nicm
Branch: MAIN
CVS Tags: OPENBSD_4_7_BASE, OPENBSD_4_7
Changes since 1.28: +6 -3 lines
Diff to previous 1.28 (colored)

Make imsg_clear close and free any fds in the received fd queue as well as
freeing the msgbuf.

While here also remove an unnecessary while loop.

ok eric pyr

Revision 1.28 / (download) - annotate - [select for diffs], Mon Jun 8 08:30:06 2009 UTC (15 years ago) by dlg
Branch: MAIN
CVS Tags: OPENBSD_4_6_BASE, OPENBSD_4_6
Changes since 1.27: +4 -11 lines
Diff to previous 1.27 (colored)

revert this change by eric@:

Make the imsg protocol network-safe.


it might be network safe, but half the imsg based daemons on my firewalls
dont run anymore.

Revision 1.27 / (download) - annotate - [select for diffs], Sun Jun 7 05:56:25 2009 UTC (15 years ago) by eric
Branch: MAIN
Changes since 1.26: +15 -3 lines
Diff to previous 1.26 (colored)

Change the way fds passed over a socket are retreived on the receiving side.

Currently the receiver fetches an imsg via imsg_get() and if he expects
an fd, he then calls imsg_get_fd() to fetch the next fd queued on the
imsgbuf from which the imsg came.

This changes hides the fd queueing mechanism to the API user.  When closing
an imsg with an fd, the message is flagged so that the receiving end knows
it must dequeue the fd in imsg_get() and return it with the imsg structure.
This way there is no (less) possible screw up from imsg_get_fd() not being
called directly after imsg_get() by the user. The retreived imsg is
self-contained.

ok pyr@, "I like that" henning@

Revision 1.26 / (download) - annotate - [select for diffs], Sun Jun 7 00:40:46 2009 UTC (15 years ago) by eric
Branch: MAIN
Changes since 1.25: +11 -3 lines
Diff to previous 1.25 (colored)

Make the imsg protocol network-safe.

ok pyr@

Revision 1.25 / (download) - annotate - [select for diffs], Sat Jun 6 22:11:25 2009 UTC (15 years ago) by eric
Branch: MAIN
Changes since 1.24: +5 -4 lines
Diff to previous 1.24 (colored)

change the imsg header fields a bit to prepare for upcoming changes.
add a flag field, use u_int32_t for pid_t and extend type to 32 bits
for padding.

ok pyr@

Revision 1.24 / (download) - annotate - [select for diffs], Sat Jun 6 05:04:12 2009 UTC (15 years ago) by pyr
Branch: MAIN
Changes since 1.23: +5 -7 lines
Diff to previous 1.23 (colored)

remove unnecessary and scary pid check in imsg_init.
ok eric@, claudio@

Revision 1.23 / (download) - annotate - [select for diffs], Fri Jun 5 23:39:51 2009 UTC (15 years ago) by pyr
Branch: MAIN
Changes since 1.22: +2 -3 lines
Diff to previous 1.22 (colored)

4 handed diff with eric:
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@

Revision 1.22 / (download) - annotate - [select for diffs], Fri Jun 5 00:04:01 2009 UTC (15 years ago) by pyr
Branch: MAIN
Changes since 1.21: +1 -2 lines
Diff to previous 1.21 (colored)

Make imsg completely async model agnostic by not requiring an
imsg_event_add function to be provided (which ended up being a named
callback).
Instead provide a wrapper in the daemon and call that everywhere.
Previsously discussed with the usual suspects,
ok eric@ though not too happy about the function name
(imsg_compose_event).

Revision 1.21 / (download) - annotate - [select for diffs], Thu Jun 4 23:33:49 2009 UTC (15 years ago) by pyr
Branch: MAIN
Changes since 1.20: +9 -15 lines
Diff to previous 1.20 (colored)

move logging functions out of imsg.h, make imsg.c more library ready
by not calling log_* or fatal and handle set errno when appropriate.

discussed with a bunch of imsg conscious guys, ok eric@

Revision 1.20 / (download) - annotate - [select for diffs], Thu Jun 4 22:42:15 2009 UTC (15 years ago) by eric
Branch: MAIN
Changes since 1.19: +6 -12 lines
Diff to previous 1.19 (colored)

change imsg_close() return type to void. It never fails nor does it
return any useful value.

"ok now" pyr@

Revision 1.19 / (download) - annotate - [select for diffs], Thu Jun 4 20:31:37 2009 UTC (15 years ago) by eric
Branch: MAIN
Changes since 1.18: +4 -4 lines
Diff to previous 1.18 (colored)

- move message types enum back to relayd.h
- use u_int16_t instead of enum imsg_type in imsg function prototypes

requested by reyk@, ok pyr@

Revision 1.18 / (download) - annotate - [select for diffs], Thu Jun 4 18:34:33 2009 UTC (15 years ago) by eric
Branch: MAIN
Changes since 1.17: +2 -7 lines
Diff to previous 1.17 (colored)

revert previous commit for now since it won't play well with snmpd.

ok pyr@

Revision 1.17 / (download) - annotate - [select for diffs], Thu Jun 4 17:51:38 2009 UTC (15 years ago) by eric
Branch: MAIN
Changes since 1.16: +7 -2 lines
Diff to previous 1.16 (colored)

make the imsg framework endian-safe so that it can also be used
for network message passing.

ok pyr@

Revision 1.16 / (download) - annotate - [select for diffs], Thu Jun 4 07:16:38 2009 UTC (15 years ago) by eric
Branch: MAIN
Changes since 1.15: +3 -8 lines
Diff to previous 1.15 (colored)

Make imsg.c and buffer.c more generic by introducing
imsg.h and a daemon-specific imsg_types.h

discussed with and "yes, please" pyr@

Revision 1.15 / (download) - annotate - [select for diffs], Wed Jun 3 05:35:06 2009 UTC (15 years ago) by eric
Branch: MAIN
Changes since 1.14: +3 -8 lines
Diff to previous 1.14 (colored)

change buf_close return type to void.
that function is not supposed to report anything remotely useful,
or fail in any meaningful way.

ok pyr@

Revision 1.14 / (download) - annotate - [select for diffs], Mon Mar 24 16:11:05 2008 UTC (16 years, 2 months ago) by deraadt
Branch: MAIN
CVS Tags: OPENBSD_4_5_BASE, OPENBSD_4_5, OPENBSD_4_4_BASE, OPENBSD_4_4
Changes since 1.13: +2 -2 lines
Diff to previous 1.13 (colored)

msg_controllen has to be CMSG_SPACE so that the kernel can account for
each cmsg_len (ie. msg_controllen = sum of CMSG_ALIGN(cmsg_len).  This
works now that kernel fd passing has been fixed to accept a bit of
sloppiness because of this ABI repair.
lots of discussion with kettenis

Revision 1.13 / (download) - annotate - [select for diffs], Sat Mar 15 16:25:00 2008 UTC (16 years, 2 months ago) by deraadt
Branch: MAIN
Changes since 1.12: +2 -2 lines
Diff to previous 1.12 (colored)

Repair more msg_controllen dealing with structures or arrays of
descriptors; ok hshoexer, also looked at by kettenis and henning

Revision 1.12 / (download) - annotate - [select for diffs], Thu Mar 13 01:49:53 2008 UTC (16 years, 3 months ago) by deraadt
Branch: MAIN
Changes since 1.11: +7 -4 lines
Diff to previous 1.11 (colored)

Correct CMSG_SPACE and CMSG_LEN usage everywhere in the tree. Due to
an extensive discussion with otto, kettenis, millert, and hshoexer

Revision 1.11 / (download) - annotate - [select for diffs], Mon Feb 11 10:42:50 2008 UTC (16 years, 4 months ago) by reyk
Branch: MAIN
CVS Tags: OPENBSD_4_3_BASE, OPENBSD_4_3
Changes since 1.10: +50 -6 lines
Diff to previous 1.10 (colored)

Marry relayd with snmpd using new "send trap" option: Request to send
a SNMP trap when the state of a host changes.  relayd(8) will try to
(re-)connect to snmpd(8) and request it to send a trap to the
registered trap receivers, see snmpd.conf(5) for more information
about the configuration.

ok pyr@ thib@

Revision 1.10 / (download) - annotate - [select for diffs], Fri Dec 7 17:17:00 2007 UTC (16 years, 6 months ago) by reyk
Branch: MAIN
Changes since 1.9: +2 -2 lines
Diff to previous 1.9 (colored)

hoststated gets renamed to relayd.  easier to type, and actually says
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

Revision 1.9 / (download) - annotate - [select for diffs], Sat Nov 24 17:07:28 2007 UTC (16 years, 6 months ago) by reyk
Branch: MAIN
Changes since 1.8: +4 -3 lines
Diff to previous 1.8 (colored)

sort includes, adjust to style(9)

Revision 1.8 / (download) - annotate - [select for diffs], Tue Jul 24 12:42:32 2007 UTC (16 years, 10 months ago) by pyr
Branch: MAIN
Changes since 1.7: +8 -5 lines
Diff to previous 1.7 (colored)

make imsg_create use dynamic buffers.
this does not change imsg_compose's behavior but allows the message's
buffer to grow and will avoid sending a ton of small messages when
unrolling lists between two processes.

discussed with claudio (and coming to ospfd soon).

Revision 1.7 / (download) - annotate - [select for diffs], Tue Jun 12 15:16:10 2007 UTC (17 years ago) by msf
Branch: MAIN
Changes since 1.6: +50 -4 lines
Diff to previous 1.6 (colored)

put the fd passing from bgpd back in to hoststated's version of imsg,
needed for layer 7 reload support.

ok pyr@

Revision 1.6 / (download) - annotate - [select for diffs], Mon Mar 19 10:11:59 2007 UTC (17 years, 2 months ago) by henning
Branch: MAIN
Changes since 1.5: +2 -2 lines
Diff to previous 1.5 (colored)

do not signal "connection closed" upstream on EINTR/EAGAIN, from bgpd et al

Revision 1.5 / (download) - annotate - [select for diffs], Mon Jan 29 14:23:31 2007 UTC (17 years, 4 months ago) by pyr
Branch: MAIN
Changes since 1.4: +3 -1 lines
Diff to previous 1.4 (colored)

Add SSL support to hoststated.
with help and OK reyk@
with help and advice by claudio@ and Srebrenko Sehic

Revision 1.4 / (download) - annotate - [select for diffs], Tue Jan 9 00:45:32 2007 UTC (17 years, 5 months ago) by deraadt
Branch: MAIN
Changes since 1.3: +2 -2 lines
Diff to previous 1.3 (colored)

adapt to rename

Revision 1.3 / (download) - annotate - [select for diffs], Mon Jan 8 20:46:18 2007 UTC (17 years, 5 months ago) by reyk
Branch: MAIN
Changes since 1.2: +1 -2 lines
Diff to previous 1.2 (colored)

do NOT use the regexp interface. it is way to complicated, error-prone
and we don't know about all the possible security problems.

change the check send/expect code to use the fnmatch(3) interface
using shell globbing rules instead. this allows simple patterns like
"220 * ESMTP*" or "SSH-[12].??-*".

suggested by deraadt@ and otto@
ok Pierre-Yves Ritschard (pyr at spootnik dot org)

Revision 1.2 / (download) - annotate - [select for diffs], Mon Jan 8 13:37:26 2007 UTC (17 years, 5 months ago) by reyk
Branch: MAIN
Changes since 1.1: +2 -1 lines
Diff to previous 1.1 (colored)

add a generic send/expect check using regular expression (see
regex(3)).  this allows to define additional checks for other TCP
protocols.

From Pierre-Yves Ritschard (pyr at spootnik dot org)

Revision 1.1 / (download) - annotate - [select for diffs], Sat Dec 16 11:45:07 2006 UTC (17 years, 5 months ago) by reyk
Branch: MAIN

Import hostated, the host status daemon.  This daemon will monitor
remote hosts and dynamically alter pf(4) tables and redirection rules
for active server load balancing.  The daemon has been written by
Pierre-Yves Ritschard (pyr at spootnik.org) and was formerly known as
"slbd".

The daemon is fully functional but it still needs some work and
cleanup so we don't link it to the build yet.  Some TODOs are a
partial rewrite of the check_* routines (use libevent whenever we
can), improvement of the manpages, and general knf and cleanup.

ok deraadt@ claudio@

This form allows you to request diff's between any two revisions of a file. You may select a symbolic revision name using the selection box or you may type in a numeric name using the type-in text box.