summaryrefslogtreecommitdiffhomepage
AgeCommit message (Collapse)Author
2018-07-12add GetInnerRelayPablo Mazzini
2018-07-08add NewReplyFromDHCPv6Message (#78)Pablo Mazzini
Add a more generic NewReplyFromMessage to avoid code duplication. This is one step closer towards fixing issue #73. Leave NewReplyFromRequest, NewReplyFromRenew and NewReplyFromRebind for backwards compatibility.
2018-07-08add DelOption to OptIANA (#77)Pablo Mazzini
2018-07-05DHCPv6.Exchange now applies modifiers correctly for both solicit and request ↵insomniac
(#75)
2018-06-28Added OptDomainNameServer for DHCPv4 (#74)insomniac
2018-06-11Pass through unknown DUIDs (#71)Michael Stapelberg
I’m building on a program which works with user-supplied DUIDs. Before this change, the code would panic when users provide a DUID which is not (yet) implemented. In addition to this being a better failure mode, the behavior is also mandated by the DHCPv6 RFC: https://tools.ietf.org/html/rfc3315#section-9 states: Clients and servers MUST treat DUIDs as opaque values and MUST only compare DUIDs for equality.
2018-06-11add NewReplyFromRenew and NewReplyFromRebind (#72)Pablo Mazzini
2018-06-10add IsNetboot and IsUsingUEFI (#70)Pablo Mazzini
2018-05-26Add NewRelayReplFromRelayForw (#69)Pablo Mazzini
2018-05-25OptBootFileURL fields are now public (#68)insomniac
2018-05-25OptUserClass does not allow empty user classes (#67)insomniac
2018-05-21Tests for DUID, OptIAAddress and several fixes (#66)insomniac
2018-05-20Unbreak build after changing OptIANA interface (#65)insomniac
2018-05-20OptIANA and OptElapsedTime now have public fieldsAndrea Barberio
2018-05-12OptDomainSearchList: made fields public and added unit tests (#64)insomniac
2018-05-11add dhcpv4.GetOption and dhcpv4.GetSingleOption methods (#63)Brandon Bennett
GetOption and GetOneOption are convenience methods for getting a DHCPv4 option from its Option Code. GetOption returns a list of options that match since the DHCP RFC allows for an option to be present multiple times with its values appended together. (Note: I am not sure I've ever seen this done and it's not clear if how option parsing would work for more complex values. Is appending done at the byte level? ) GetOneOption will return the first found option that matches a code.
2018-05-10OptDNSRecursiveNameServer gets public fields and tests, removes setter and ↵insomniac
getter (#62)
2018-05-08OptStatusCode: public fields, proper codes, and tests (#61)insomniac
2018-05-06Added code coverage via Codecov (#60)insomniac
2018-05-06Added tests for OptServerId (#59)insomniac
2018-05-06Added tests for OptClientId and using net.HardwareAddr for DUID (#58)insomniac
2018-05-06Added tests for OptClientArchType (#57)insomniac
2018-05-02Added WithClientId, WithServerId and tests (#56)insomniac
2018-05-02UpdateOption now adds the option if missing (#55)insomniac
2018-05-02NewMessage now accepts modifiers (#54)insomniac
2018-05-01Corrected variable nameAndrea Barberio
2018-05-02UpdateOption is now part of the DHCPv6 interface (#53)insomniac
2018-05-02ClientID and ServerID are now public, with no setter/getter (#52)insomniac
2018-04-30Made client ID field publicAndrea Barberio
2018-04-30add NewReplyFromRequest (#51)Pablo Mazzini
2018-04-30add NewAdvertiseFromSolicit (#50)Pablo Mazzini
add NewAdvertiseFromSolicit
2018-04-27fix EncapsulateRelay (#48)Pablo Mazzini
2018-04-26Fixed OptUserClass and added unit test (#47)insomniac
Fixed OptUserClass and added unit test
2018-04-22Added netboot package (#45)insomniac
Added netboot package
2018-04-20dhcpv6: option userclass: supporting multiple user classes (#44)insomniac
dhcpv6: option userclass: supporting multiple user classes
2018-04-20WithUserClass using the passed user class nowAndrea Barberio
2018-04-20dhcpv6: added modifiers (#41)insomniac
dhcpv6: added modifiers Added support for packet modifiers, i.e. functions that can arbitrarily manipulate a DHCPv6 packet. These modifiers are used by NewMessage, NewSolicitForInterface, NewRequestForAdvertise, and can be used by other packet creation functions. A bunch of sample modifiers have been added under modifiers.go , too. With the introduction of modifiers I also removed some options that should not necessarily be in a standard DHCPv6 message.
2018-04-19OptArchType: made field publicAndrea Barberio
2018-04-18dhcpv6: Client.Exchange returns all the intermediate packetsAndrea Barberio
2018-04-18DHCPv6 client now waits for specific packet types (#38)insomniac
Before this patch the client just took whatever DHCP message it received, without checking if it's what it wants. Now it checks for the message type. If the message is not a relay, also check the transaction ID
2018-04-18Fixed DHCPv4 listener (#37)insomniac
Fixed DHCPv4 listener There were two bugs in the DHCPv4 client: * the listener was called *after* the sender * the listener was not binding to the same interface as the sender, but listening for every UDP packet This is now fixed.
2018-04-18Fixed user class and status code optionsAndrea Barberio
2018-04-18Added missing field to user class, and added to ParseOptionAndrea Barberio
2018-04-18Fixed user class option lengthAndrea Barberio
2018-04-18Fixed user class lengthAndrea Barberio
2018-04-17Added user class option and fixed status code optionAndrea Barberio
2018-04-17dhcpv6: OptBootFileURL.String now uses string representationAndrea Barberio
2018-04-17dhcpv6: added DHCPv6Message.UpdateOptionAndrea Barberio
2018-04-11Update README.mdinsomniac
2018-04-10add GetInnerPeerAddr (#33)Pablo Mazzini