Commit Graph

  • 219443ba7a
    random: Use unmodified SFC64. master Nicholas J. Kain 2023-06-24 01:05:09 -0400
  • 98e0ca3f6f
    README: Writing PID files is not supported anymore. Nicholas J. Kain 2023-02-13 10:27:00 -0500
  • 3ff8685fc6
    cfg.rl: Build with compact table-driven Ragel mode. Nicholas J. Kain 2023-02-13 00:27:18 -0500
  • d9e0afdc7c
    Move get_clientid_string() to cfg.rl. Nicholas J. Kain 2023-02-13 00:18:16 -0500
  • aa684baad7
    Don't use ctype.h functions. Nicholas J. Kain 2023-02-11 20:45:30 -0500
  • 841c8663e9
    Make example s6 script handle empty leasefile properly. Nicholas J. Kain 2023-01-18 12:54:55 -0500
  • 44511e6789
    Don't overwrite a possibly valid leasefile if we have no valid lease. Nicholas J. Kain 2023-01-18 08:08:33 -0500
  • 1b8dc7f05e
    random: Use sfc64 instead of gjrand. Nicholas J. Kain 2022-10-13 08:43:11 -0400
  • 1c1ea86604
    ifset: Use a slightly better portable ctz(). Nicholas J. Kain 2022-09-24 14:12:02 -0400
  • 95c70ba2a7
    Properly force a restart if scriptd exists and dies. Nicholas J. Kain 2022-09-08 07:17:55 -0400
  • 26f81272ee
    scriptd: Signal handlers don't need SA_NOCLDWAIT set. Nicholas J. Kain 2022-09-08 07:17:11 -0400
  • 5eccd4893a
    Set FD_CLOEXEC on scriptd(Sock|Stream). Nicholas J. Kain 2022-09-07 17:25:22 -0400
  • f7db9fd5e7
    Correct regression introduced by previous commit. Nicholas J. Kain 2022-09-07 17:08:43 -0400
  • ebd2c4c01a
    scriptd: Wait to notify s6 until script completes. Nicholas J. Kain 2022-09-07 04:45:30 -0400
  • 4d739acbdd
    Use a helper to ensure xid always changes when we advance it. Nicholas J. Kain 2022-08-28 04:41:11 -0400
  • 9b8e2facbf
    Advance the xid before we send each DHCPDISCOVER. Nicholas J. Kain 2022-08-28 04:06:15 -0400
  • c755902fbc
    Reseed the PRNG whenever we reset the DHCP state. Nicholas J. Kain 2022-08-28 03:54:57 -0400
  • 1f0a8f29de
    Use the HWRNG for generating DUIDs and IAIDs. Nicholas J. Kain 2022-08-28 03:52:44 -0400
  • d43fc12306
    Advance the xid after we consume a DHCPACK or DHCPNAK. Nicholas J. Kain 2022-08-28 03:40:59 -0400
  • 6446f80a02
    privs: Don't use libc isdigit() Nicholas J. Kain 2022-08-27 10:29:11 -0400
  • 7fb968e861
    Use memccpy() and memcpy() instead of nstr{cpy,lcpy,cat}. Nicholas J. Kain 2022-08-27 03:53:48 -0400
  • e223b4c5a8 Use {O,SOCK}_CLOEXEC more consistently. Nicholas J. Kain 2022-08-13 00:42:27 -0400
  • 867b70e83e nk/privs.c: Fix a trivial warning. Nicholas J. Kain 2022-08-10 12:10:55 -0400
  • 6c44f536ad Build with -Wstrict-overflow=5 and fix revealed warnings. Nicholas J. Kain 2022-08-10 11:32:30 -0400
  • 9338aa37c2 Use libc snprintf and nstr{cpy,cat}. Nicholas J. Kain 2022-08-09 14:17:31 -0400
  • 898765e0a8 scriptd: Use posix_spawn rather than fork/exec. Nicholas J. Kain 2022-08-09 13:40:10 -0400
  • 45e8e0bad2 Remove an obsolete comment. Nicholas J. Kain 2022-08-06 12:41:35 -0400
  • cee287a522 Add Codeberg as a git source. Nicholas J. Kain 2022-08-03 20:58:19 -0400
  • cd859ce8c3 nk/privs: Make capabilities conditional on __linux__ define. Nicholas J. Kain 2022-03-08 23:35:12 -0500
  • 9998790488 nk/privs: Use NO_NEW_PRIVS by default when setting non-empty capset. Nicholas J. Kain 2022-03-08 14:54:57 -0500
  • b21edf205a nk/hwrng: Use libc wrapper for getrandom by default. Nicholas J. Kain 2022-03-08 13:45:52 -0500
  • 0b53d93648 Update documentation and add more configuration examples. Nicholas J. Kain 2022-03-08 12:38:27 -0500
  • 5bca0a3d48 Add example config file and s6 run file. Nicholas J. Kain 2022-03-08 12:23:05 -0500
  • 484a9c516b Use stb_snprintf instead of libc snprintf. Nicholas J. Kain 2022-03-07 20:42:00 -0500
  • 3773acf64d When rfkill is disabled, resync the carrier state to be safe. Nicholas J. Kain 2022-03-07 13:59:52 -0500
  • f6dfd9a58a nk/exec.c: Update documentation comment Nicholas J. Kain 2022-02-25 07:10:07 -0500
  • 9cd65f35d9 Get rid of nk/copy_cmdarg.h Nicholas J. Kain 2022-02-25 07:01:55 -0500
  • 12631c59bb Update to latest nk/exec.c; see ncron repo for changes. Nicholas J. Kain 2022-02-25 06:43:42 -0500
  • 7572e2eb8b snprintf() truncation checks were one byte too conservative. Nicholas J. Kain 2022-02-25 06:11:16 -0500
  • ba8f674e15 nk/exec: Simplify and remove double null termination. Nicholas J. Kain 2022-02-25 04:53:02 -0500
  • 62aef529f4 Use safe_write() in nk/exec.c Nicholas J. Kain 2022-02-25 00:05:57 -0500
  • 286b86d62c Preserve errno across signals. Nicholas J. Kain 2022-02-24 05:06:12 -0500
  • a9874d4959 Support running an executable file when a new lease is acquired. Nicholas J. Kain 2022-02-24 00:52:26 -0500
  • 2fb16567f1 Support s6 service startup notification Nicholas J. Kain 2022-02-12 16:31:39 -0500
  • d67e1599df Update the manpage a bit. Nicholas J. Kain 2022-02-12 12:57:10 -0500
  • 416bed7eec Minor README update Nicholas J. Kain 2022-02-06 21:02:14 -0500
  • 1732bccccc Relicense as MIT. Nicholas J. Kain 2022-02-06 20:05:29 -0500
  • 9fddfbda61 Simplify Makefile Nicholas J. Kain 2022-01-23 19:37:40 -0500
  • 6f85b2aaf2 Update Makefile to generate dependency info Nicholas J. Kain 2022-01-23 18:31:04 -0500
  • 8db8c5589d Replace CMake with GNU Make. Nicholas J. Kain 2022-01-22 18:39:41 -0500
  • 1055c27bcf Update Makefile build flags Nicholas J. Kain 2022-01-22 15:49:16 -0500
  • a71b95ad34 CMake: Update to latest policies Nicholas J. Kain 2022-01-21 19:01:37 -0500
  • 6ec0a5c731 Replace mostly obsolete -[static 1] with reliable old *-. Nicholas J. Kain 2022-01-11 22:35:19 -0500
  • 6047f04a12 Guard against carrier being spuriously set down. Nicholas J. Kain 2022-01-11 22:16:44 -0500
  • f3766990f9 Speed up interface carrier checking. Nicholas J. Kain 2021-04-25 05:26:19 -0400
  • ad1546ecb0 ifchd: Minor corrections in informative prints Nicholas J. Kain 2021-04-25 05:02:56 -0400
  • d61902cad4 ifchd: Better handle incomplete command buffers. Nicholas J. Kain 2021-04-25 04:34:37 -0400
  • eb463ab086 poll() revents bits are reset by poll() Nicholas J. Kain 2021-04-25 02:03:21 -0400
  • c8eb238f31 ifchd-parse: Simplify leftover-buffer copying. Nicholas J. Kain 2021-04-24 20:50:08 -0400
  • b8bffa16c5 Build without -fno-strict-overflow. Nicholas J. Kain 2020-11-25 04:44:26 -0500
  • 28e1b34bac Simplify logging and fix some format specifiers. Nicholas J. Kain 2020-11-24 21:02:51 -0500
  • 2e3c504cc5 Add and use safe_ftruncate() wrapper. Nicholas J. Kain 2020-11-06 18:47:51 -0500
  • a91b1d34ac Check and clear events from poll() even if interrupted by signal. Nicholas J. Kain 2020-11-06 18:32:38 -0500
  • 1e60b4b8e7 Optimize internet checksum to use 32-bit fetches. Nicholas J. Kain 2020-11-01 00:52:38 -0400
  • ff8b910222 Rename net_checksum161c to net_checksum16. Nicholas J. Kain 2020-10-27 14:45:15 -0400
  • 918555219b Make fingerprinting more robust with rapid carrier state changes. Nicholas J. Kain 2020-10-27 14:14:18 -0400
  • d07469a5fa Optimize internet checksum to use 16-bit fetches. Nicholas J. Kain 2020-10-24 17:14:20 -0400
  • 5fdf3bd83e Remove unused definitions from CMakeLists.txt. Nicholas J. Kain 2020-10-24 15:45:57 -0400
  • b86735c478 Minor signal handling fixes. Nicholas J. Kain 2020-10-21 09:49:22 -0400
  • d58338b70b serverid checks for RENEW and REBIND DHCP(ACK|NAK) were too strict. Nicholas J. Kain 2020-10-21 06:47:11 -0400
  • b07ebb60a2 Revert bb7841f3ee. Nicholas J. Kain 2020-10-20 07:55:47 -0400
  • 48bbb0b805 Add a missing newline to an error message. Nicholas J. Kain 2020-10-20 07:53:23 -0400
  • bb7841f3ee Trivial warning fix. Nicholas J. Kain 2020-10-20 07:18:49 -0400
  • e6b5247d54 Update the plain Makefile. Nicholas J. Kain 2020-10-20 07:18:19 -0400
  • 1ba7c9a2ba Documentation update -- signalfd and epoll aren't used anymore. Nicholas J. Kain 2020-10-20 07:06:19 -0400
  • f1e20305ba Don't depend on external ncmlib. Nicholas J. Kain 2020-10-20 06:44:31 -0400
  • 4575f74164 Remove legacy support for exiting after obtaining a DHCP lease. Nicholas J. Kain 2020-10-20 06:54:17 -0400
  • ade4e988af Remove legacy support for forking to background. Nicholas J. Kain 2020-10-20 06:52:30 -0400
  • 58067200d6 Remove legacy support for writing a pidfile. Nicholas J. Kain 2020-10-20 06:48:00 -0400
  • 4d33c00e04 Use poll() instead of epoll() for ndhc-master. Nicholas J. Kain 2020-10-20 05:54:00 -0400
  • af9d45719f Use poll() instead of epoll() for ifchd and sockd. Nicholas J. Kain 2020-10-20 05:09:26 -0400
  • 06a541261e Stop using signalfd and audit signal handling code. Nicholas J. Kain 2020-10-20 04:23:55 -0400
  • 8d89ca9f19 Reliably force restart when a subprocess has a fatal error. Nicholas J. Kain 2020-10-20 01:12:59 -0400
  • f0340b1475 Correct ba046c02c7. Nicholas J. Kain 2020-10-19 13:03:35 -0400
  • 32bc422d0e Add a heuristic to detect when server ignores dhcp renews. Nicholas J. Kain 2020-10-19 07:03:03 -0400
  • f4365897bc Make renew and rebinding directly track whether DHCPREQUEST was sent. Nicholas J. Kain 2020-10-19 06:05:47 -0400
  • 4df035ced3 Make sure xids in packets sent conform to RFC2131 pg36 table5. Nicholas J. Kain 2020-10-19 05:39:08 -0400
  • 5dc35eca6d Merge send_renew() and send_rebind() into send_renew_or_rebind(). Nicholas J. Kain 2020-10-19 05:26:47 -0400
  • 23d23c108a DHCPREQUEST in REBINDING state shouldn't have reqip option. Nicholas J. Kain 2020-10-19 05:13:47 -0400
  • 9b8c63d998 Give up on fingerprinting router/gateway if it doesn't reply. Nicholas J. Kain 2020-10-19 04:25:15 -0400
  • 87ac82fa45 Add back project() for CMake. Corrects regression in c5a1edd5f6. Nicholas J. Kain 2020-10-19 04:27:15 -0400
  • b2af308647 Trivial refactoring. Nicholas J. Kain 2020-10-19 03:11:51 -0400
  • 7bd551d564 Give up on fingerprinting relay agent/server if it doesn't reply. Nicholas J. Kain 2020-10-19 03:07:23 -0400
  • ba046c02c7 Make custom SIGUSR signals work again. Nicholas J. Kain 2020-09-02 21:04:59 -0400
  • fb143995d2 Silence unused variable warnings in Ragel-generated code. Nicholas J. Kain 2019-01-01 01:10:34 -0500
  • 253a97662d sockd: Preserve a const qualifier. Nicholas J. Kain 2018-10-26 13:07:37 -0400
  • 3f5285b7ce options.c: Remove an unnecessary cast. Nicholas J. Kain 2018-10-26 13:07:19 -0400
  • c5a1edd5f6 Use more modern CMake syntax. Nicholas J. Kain 2018-10-26 13:07:05 -0400
  • 56b6ae2cd3 Quit using NULL macro. Nicholas J. Kain 2018-10-26 07:17:39 -0400
  • 05a075aeb2 Replace '(c)' with 'Copyright'. Nicholas J. Kain 2018-10-26 07:11:16 -0400