OpenBSD CVS

CVS log for src/usr.sbin/dhcpleasectl/dhcpleasectl.c


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

Request diff between arbitrary revisions


Default branch: MAIN


Revision 1.8 / (download) - annotate - [select for diffs], Thu Jun 6 15:07:46 2024 UTC (2 days, 14 hours ago) by florian
Branch: MAIN
CVS Tags: HEAD
Changes since 1.7: +5 -5 lines
Diff to previous 1.7 (colored)

Correct plural form usage.

Revision 1.7 / (download) - annotate - [select for diffs], Thu Sep 16 06:23:01 2021 UTC (2 years, 8 months ago) by jmc
Branch: MAIN
CVS Tags: OPENBSD_7_5_BASE, OPENBSD_7_5, OPENBSD_7_4_BASE, OPENBSD_7_4, OPENBSD_7_3_BASE, OPENBSD_7_3, OPENBSD_7_2_BASE, OPENBSD_7_2, OPENBSD_7_1_BASE, OPENBSD_7_1, OPENBSD_7_0_BASE, OPENBSD_7_0
Changes since 1.6: +2 -2 lines
Diff to previous 1.6 (colored)

sync SYNOPSIS and usage(); ok florian

Revision 1.6 / (download) - annotate - [select for diffs], Wed Sep 15 15:18:23 2021 UTC (2 years, 8 months ago) by florian
Branch: MAIN
Changes since 1.5: +185 -148 lines
Diff to previous 1.5 (colored)

Rewrite and simplify dhcpleasectl(8).

With this

dhcpleasectl em0

does the same as

dhclient em0

used to do. To please people's muscle memory one can be aliased to the other.

earlier version OK benno

with lots of help massaging the output & OK deraadt

Revision 1.5 / (download) - annotate - [select for diffs], Mon Jul 26 09:26:36 2021 UTC (2 years, 10 months ago) by florian
Branch: MAIN
Changes since 1.4: +6 -1 lines
Diff to previous 1.4 (colored)

Implement possibility to send vendor class identifier (option 60) and
client identifier (option 61). Some dhcp servers expect these options
and refuse to hand out a lease without them.
Need for vendor class identifier pointed out & tested by bket
Need for client identifier pointed out by sthen
Input & reads OK sthen (as part of a larger diff)
OK kn (as part of a larger diff)

Revision 1.4 / (download) - annotate - [select for diffs], Wed Jun 16 14:06:18 2021 UTC (2 years, 11 months ago) by florian
Branch: MAIN
Changes since 1.3: +17 -8 lines
Diff to previous 1.3 (colored)

Implement classless static routes dhcp option.

For this we need to be able to handle multiple routes being sent from
the engine to the main process as well as to the control tool.
The configuration of the various cases (default route, directly
connected routes, non-default route via a gateway) was inspired by
dhclient's set_routes() and should behave the same way.

Tested by Uwe Werler

Revision 1.3 / (download) - annotate - [select for diffs], Tue Mar 23 17:46:20 2021 UTC (3 years, 2 months ago) by florian
Branch: MAIN
CVS Tags: OPENBSD_6_9_BASE, OPENBSD_6_9
Changes since 1.2: +17 -7 lines
Diff to previous 1.2 (colored)

Use time_t for intermediate lease time values when calculating human
readable output for very long timeouts to prevent overflow.
While here add years and days.
Days might actually show up in normal leases. Years is to catch
"infinity" which is encoded as UINT32_MAX and used by vmd(8).
Previously we would overflow, wrap to negative which then got
transformed to 0s.
Pointed out by Dave Voutila while working on the vmd(8) dhcp code.

Revision 1.2 / (download) - annotate - [select for diffs], Sat Feb 27 10:21:08 2021 UTC (3 years, 3 months ago) by florian
Branch: MAIN
Changes since 1.1: +2 -2 lines
Diff to previous 1.1 (colored)

Path #defines are traditionally prefixed with _PATH.
pointed out by deraadt

Revision 1.1 / (download) - annotate - [select for diffs], Fri Feb 26 16:16:37 2021 UTC (3 years, 3 months ago) by florian
Branch: MAIN

Import dhcpleased(8) - a dhcp daemon to acquire IPv4 address leases
from servers.

dhcpleased(8) follows the well known three process design of all our
privsep daemons. It uses pledge(2) and unveil(2) to restrict access
further. In particular the "engine" process, responsible for parsing
of untrusted data, is pledge'd "stdio". It cannot access the outside
world nor the filesystem at all.

Like slaacd(8) for IPv6 it will be always running and acquire addresses
for all interface with the autoconf4 flag set.
The flag can be set by "ifconfig $if inet autoconf" or by adding
"inet autoconf" to /etc/hostname.if. An existing "dhcp" line should
be removed.

Various iterations tested by deraadt@
The hardest part, finding a name, was handled by jmatthew@ & otto@

"get to it :)" deraadt@

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.