Commit Graph

99 Commits

Author SHA1 Message Date
Jeffrey Altman 51912c0215 roken: introduce rk_socket_set_keepalive
Change-Id: I3086a10cd3d23bef00336f5db7db3a35ca02d568
2020-07-24 01:32:34 -04:00
Luke Howard befe1b8f90 always load plugins with RTLD_LOCAL/RTLD_GROUP if available 2019-01-03 20:06:27 -06:00
Nicolas Williams 073ffd0423 roken: Make sure we have MAX_PATH 2018-12-25 22:11:19 -06:00
Nicolas Williams 6a0f45c4d7 Use __attribute__ ((__name__)) form
Protect against macros named noreturn and so on.
2017-03-13 18:39:41 -04:00
Nicolas Williams ec2204f435 Use volatile to keep ct_memcmp() ct 2016-02-16 20:49:29 -06:00
Nicolas Williams b48bed5f42 Daemons detach atomically to avoid having to wait
Tests that start daemons have to "wait" for them to start.

This commit makes Heimdal daemons prep to detach (when requested) by
forking early, then having the child signal readiness to the parent when
the child really is ready.  The parent exits only which the child is
ready.  This means that tests will no longer need to wait for daemons.

However, tests will still need a pidfile or such so they can stop the
daemons.

Note that the --detach options should not be used on OS X from launchd,
only from tests.
2015-03-24 11:49:59 -05:00
Viktor Dukhovni 23b8ae825a Fix rk_cloexec_socket() prototype 2013-08-19 17:22:43 -05:00
Jeffrey Altman 3f1d795758 roken: introduce rk_cloexec_socket
Accepts type rk_socket_t and is a no-op on Windows

Change-Id: I82755872e86ef36445e60054dd752279aaceb6d1
2013-08-19 10:21:23 -04:00
Jeffrey Altman 5b223c2caa roken: do not require use of rk_mkdir on all platforms
Although rk_mkdir can be provided on all platforms there is no
reason to require that it be used by unconditionally mapping

  mkdir -> rk_mkdir

Change-Id: Ic149500037abf446434332bf6ba67dfb3906cd72
2013-07-27 19:13:17 -04:00
Love Hornquist Astrand 3ad1bf2dcc provide O_NOFOLLOW if there is non 2013-07-10 22:06:19 +02:00
Jeffrey Altman 8fa446d75c roken: Add rk_mkdir()
The Windows version of mkdir() does not share the same signature
as the POSIX version.  Add rk_mkdir() with an POSIX compliant signature
to libroken.  The current implementation ignores the 'mode' parameter
on Windows but a future implementation could provide the required
functionality with native Win32 APIs.

Change-Id: I084d42e0f27932e9b8131d310dbf34849f5fe4b6
2013-06-22 21:17:26 -04:00
Ben Kaduk c0328e1328 Always provide a usable PATH_MAX
If a program does not include limits.h (or includes it after roken.h),
it can end up with PATH_MAX defined to be MAX_PATH, but MAX_PATH
undefined.  This causes consumers of PATH_MAX to become unhappy.

Work around this case by only using MAX_PATH if it is available, and
a constant otherwise.
2013-06-14 13:31:42 -04:00
Love Hornquist Astrand 087c859db6 add socket_set_nonblocking 2012-12-20 12:03:54 +01:00
Love Hornquist Astrand 3c241aef9e don't undefined SLIST 2010-12-12 11:45:53 -08:00
Love Hornquist Astrand 987faedb80 add random abstraction 2010-11-29 09:31:07 -08:00
Asanka C. Herath 538c7ce29c More compatibility macros
Undefine SLIST_ENTRY to avoid conflict with WinNT.h

Define AI_NUMERICSERV for platforms that don't define it.
2010-11-24 15:33:15 -05:00
Asanka Herath 68cfbb7e19 Add rk_cloexec_dir() to lib/roken 2009-12-22 14:03:39 -05:00
Love Hornquist Astrand 16a890a29c revert merged patches 2009-11-25 08:28:35 -08:00
Love Hornquist Astrand f1c0c1bba3 prefix SOCKET symbols with rk_ 2009-11-25 05:29:18 +01:00
Asanka Herath 8e785a5750 Formatting changes and new mini_inetd() function signatures 2009-11-24 10:20:18 -08:00
Asanka Herath 49b261efdc Formalize the simple_exec*() API 2009-11-24 10:17:18 -08:00
Asanka Herath 6ca5815e3d Socket functions should use SOCKET instead of int 2009-11-24 10:11:15 -08:00
Asanka Herath b1063ea8fc Initial Windows port 2009-11-24 10:11:14 -08:00
Love Hornquist Astrand b657b2e680 Add constant time version of memcmp 2009-08-15 13:24:52 +02:00
Love Hörnquist Åstrand 1ab1b93b28 more const-ification
git-svn-id: svn://svn.h5l.se/heimdal/trunk/heimdal@25210 ec53bebd-3082-4978-b11e-865c3cabbd6b
2009-05-09 14:22:53 +00:00
Love Hörnquist Åstrand efed5633ca prefix symbols with rk_, patch from Martin von Gagern
git-svn-id: svn://svn.h5l.se/heimdal/trunk/heimdal@24759 ec53bebd-3082-4978-b11e-865c3cabbd6b
2009-02-17 02:49:55 +00:00
Love Hörnquist Åstrand aaefca7514 prefix warnerr with rk_
git-svn-id: svn://svn.h5l.se/heimdal/trunk/heimdal@24732 ec53bebd-3082-4978-b11e-865c3cabbd6b
2009-02-16 18:37:35 +00:00
Love Hörnquist Åstrand c61f9fcbe9 drop simple_execl
git-svn-id: svn://svn.h5l.se/heimdal/trunk/heimdal@24340 ec53bebd-3082-4978-b11e-865c3cabbd6b
2009-01-25 00:27:59 +00:00
Love Hörnquist Åstrand 6937d41a02 remove trailing whitespace
git-svn-id: svn://svn.h5l.se/heimdal/trunk/heimdal@23815 ec53bebd-3082-4978-b11e-865c3cabbd6b
2008-09-13 09:21:03 +00:00
Love Hörnquist Åstrand e172367898 switch to utf8 encoding of all files
git-svn-id: svn://svn.h5l.se/heimdal/trunk/heimdal@23814 ec53bebd-3082-4978-b11e-865c3cabbd6b
2008-09-13 08:53:55 +00:00
Love Hörnquist Åstrand e9c6b517fd xfree, close-on-exec
git-svn-id: svn://svn.h5l.se/heimdal/trunk/heimdal@23468 ec53bebd-3082-4978-b11e-865c3cabbd6b
2008-07-27 12:16:56 +00:00
Love Hörnquist Åstrand f577a16f67 add rk_xfree()
git-svn-id: svn://svn.h5l.se/heimdal/trunk/heimdal@23409 ec53bebd-3082-4978-b11e-865c3cabbd6b
2008-07-26 18:33:25 +00:00
Love Hörnquist Åstrand a41b11dae7 add rk_undumpdata
git-svn-id: svn://svn.h5l.se/heimdal/trunk/heimdal@23390 ec53bebd-3082-4978-b11e-865c3cabbd6b
2008-07-26 18:23:18 +00:00
Love Hörnquist Åstrand bdd3ed1630 (free_environment): free result of read_environment().
git-svn-id: svn://svn.h5l.se/heimdal/trunk/heimdal@20867 ec53bebd-3082-4978-b11e-865c3cabbd6b
2007-06-03 21:00:45 +00:00
Love Hörnquist Åstrand 53b9d752a2 (free_environment): free result of read_environment().
git-svn-id: svn://svn.h5l.se/heimdal/trunk/heimdal@20865 ec53bebd-3082-4978-b11e-865c3cabbd6b
2007-06-03 20:55:22 +00:00
Love Hörnquist Åstrand 38c5dbe857 Move rk_UNCONST to roken.h.in since it might use uintptr_t depending
on avaibility.


git-svn-id: svn://svn.h5l.se/heimdal/trunk/heimdal@16102 ec53bebd-3082-4978-b11e-865c3cabbd6b
2005-09-28 03:05:58 +00:00
Love Hörnquist Åstrand e0cb46351f Add rk_dumpdata.
git-svn-id: svn://svn.h5l.se/heimdal/trunk/heimdal@16090 ec53bebd-3082-4978-b11e-865c3cabbd6b
2005-09-22 23:52:24 +00:00
Love Hörnquist Åstrand 654d9acc05 Add socket_set_ipv6only, remove some argument names.
git-svn-id: svn://svn.h5l.se/heimdal/trunk/heimdal@16004 ec53bebd-3082-4978-b11e-865c3cabbd6b
2005-09-01 18:47:35 +00:00
Love Hörnquist Åstrand 00bf2bc852 remove duplicate ;
git-svn-id: svn://svn.h5l.se/heimdal/trunk/heimdal@15564 ec53bebd-3082-4978-b11e-865c3cabbd6b
2005-07-07 05:03:30 +00:00
Love Hörnquist Åstrand a9212312c1 rk_strpoolprintf first variable identifier is 3
git-svn-id: svn://svn.h5l.se/heimdal/trunk/heimdal@15562 ec53bebd-3082-4978-b11e-865c3cabbd6b
2005-07-06 07:09:16 +00:00
Love Hörnquist Åstrand b7de0b950c fix format attribute
git-svn-id: svn://svn.h5l.se/heimdal/trunk/heimdal@15525 ec53bebd-3082-4978-b11e-865c3cabbd6b
2005-06-29 14:13:50 +00:00
Love Hörnquist Åstrand d1e139c302 add strpool, a printf collector to make it eaiser to collect strings
into one string


git-svn-id: svn://svn.h5l.se/heimdal/trunk/heimdal@15519 ec53bebd-3082-4978-b11e-865c3cabbd6b
2005-06-28 22:49:56 +00:00
Love Hörnquist Åstrand 601faffba8 add rk_UNCONST that can be used to unconstify variables to avoid
api problems that -Wcast-qual will detect


git-svn-id: svn://svn.h5l.se/heimdal/trunk/heimdal@15410 ec53bebd-3082-4978-b11e-865c3cabbd6b
2005-06-16 16:39:42 +00:00
Love Hörnquist Åstrand eb9bd70683 add rk_realloc
git-svn-id: svn://svn.h5l.se/heimdal/trunk/heimdal@14984 ec53bebd-3082-4978-b11e-865c3cabbd6b
2005-04-27 12:17:53 +00:00
Love Hörnquist Åstrand 709aa58c74 define ROKEN_LIB_FUNCTION on all exported functions
git-svn-id: svn://svn.h5l.se/heimdal/trunk/heimdal@14773 ec53bebd-3082-4978-b11e-865c3cabbd6b
2005-04-12 11:29:18 +00:00
Love Hörnquist Åstrand 5cc66e1d2b add simple_execve_timed
git-svn-id: svn://svn.h5l.se/heimdal/trunk/heimdal@13344 ec53bebd-3082-4978-b11e-865c3cabbd6b
2004-02-12 14:48:04 +00:00
Love Hörnquist Åstrand 0e44e47b2a add timed simple_exec
git-svn-id: svn://svn.h5l.se/heimdal/trunk/heimdal@13342 ec53bebd-3082-4978-b11e-865c3cabbd6b
2004-02-12 14:37:18 +00:00
Love Hörnquist Åstrand 627c19cca9 use EAI_NONAME instead of EAI_ADDRFAMILY to check for if we need EAI_ macros
git-svn-id: svn://svn.h5l.se/heimdal/trunk/heimdal@13169 ec53bebd-3082-4978-b11e-865c3cabbd6b
2003-12-02 11:28:31 +00:00
Johan Danielsson 2f8c0d7281 fix typo in previous
git-svn-id: svn://svn.h5l.se/heimdal/trunk/heimdal@11410 ec53bebd-3082-4978-b11e-865c3cabbd6b
2002-09-09 13:41:12 +00:00
Johan Danielsson 4b36aecdf4 change IRIX == 4 to IRIX4
git-svn-id: svn://svn.h5l.se/heimdal/trunk/heimdal@11404 ec53bebd-3082-4978-b11e-865c3cabbd6b
2002-09-09 13:29:09 +00:00