DHCPv4 and DHCPv6 packet library, client and server written in Go
dhcplb is Facebook's implementation of a load balancer for DHCP.
a Go (golang) RADIUS client and server implementation
startedtmrts/go-patterns
started time in 4 days
pull request commentlayeh/radius
[radius] Add SecretSourceWithBytes interface type
@bontibon would you mind taking a look and letting me know your thoughts?
comment created time in 22 days
issue commentlayeh/radius
Increase flexibility of SecretSource?
Added a PR, please let me know what you think. I took an approach that would not impact any existing code using SecretSource.RADIUSSecret. If you are ok with that, the cleaner/easier solution would be to simply add the []bytes parameter to that method, rather than a second interface like I have done in my first attempt.
comment created time in a month
PR opened layeh/radius
This PR is in response to Issue #82 .
Summary: These changes add another method of determining a secret to use for an incoming radius packet, without modifying the existing behavior of SecretSource interface. Relying on Remote Address is sadly really painful to do in my current employer's environment. It is much easier for us to rely on NAS-Identifier information, or possibly other attributes.
pr created time in a month
push eventgorhamc/radius
commit sha 5e4b13fc87375629985fe064b96da069ffb54e7f
[radius] Add SecretSourceWithBytes interface type
push time in a month
push eventgorhamc/radius
push time in a month
push eventgorhamc/radius
commit sha fbf0f8783c32d725b36e324cc8e46b0061a47f5d
Merge branch 'master' of https://github.com/gorhamc/radius
commit sha 8d784dbd2b0386c9192feb90ef00b33d2fc989f6
Merge branch 'master' of https://github.com/gorhamc/radius
push time in a month
push eventgorhamc/radius
commit sha 398eef9aaa3b8858c0a8ec54a85f5c571847e788
- amend more changes to SecretSourceWithBytes commit
commit sha 1148014318b48c0996278f9737aa3d263dcbcb85
Merge branch 'master' of https://github.com/gorhamc/radius
push time in a month
push eventgorhamc/radius
commit sha 3022952f1b2b5f86d9e64fde83142b05bd2cd860
[radius] Add SecretSourceWithBytes interface type - alternative to existing SecretSource
commit sha 7b7b9c15b108934728373d3025e69d17b0453c39
Merge branch 'master' of https://github.com/gorhamc/radius
push time in a month
push eventgorhamc/radius
commit sha 02df9775dc832a9d46fa7a7d995c8c76c77625bc
[radius] Add SecretSourceWithBytes interface type - alternative to existing SecretSource
push time in a month
push eventgorhamc/radius
push time in a month
push eventgorhamc/radius
commit sha d06650ea3e520426d8125d229645f68aea9213c0
add PacketServer.ErrorLog Closes #76 Closes #77
commit sha df567032bb2c2060ef7fe4afe0a22fc0da365a85
add rfc6677
commit sha de94a2aa0a2de140be72e4a8dc0cd0ee7643ba0d
add rfc6572
commit sha 2b3c75865c20eb22199e87c02cc52242ccb300c9
add rfc6519
commit sha 156c8511744b494c46a1d4e94762bb929325d412
add rfc5447
commit sha 63a7f112519d9a81af21877587af5edbf481b9ae
add rfc5904
commit sha 29d5ceaf96ecb72c4f56c721f965f3087d8b6020
add rfc4675
commit sha 6fa01a13882fa441521198035bf1e64e735f73fd
add rfc7055
commit sha 2801bc3084b78eb1406ef086404b8d7b7ab2f1f6
add rfc7268
commit sha d62a6e0a181915aa4d007265bc81ee02531e7baa
vendor RFC, vendors dictionary files
commit sha 9e40e42cac879600e57d70123c9e9a0cdc78d27a
resolving conflicts with upstream master
push time in a month
issue openedlayeh/radius
Increase flexibility of SecretSource?
The existing SecretSource method is great and follows the RFC, as it should. However, relying on IP source to determine what secret should be used is difficult in very large environments that don't necessarily standardize IP space deployments. In my employer's use case, it would be much simpler to rely on something like Nas-Identifier.
Would you be open to supporting something like that? I'm happy to do a PR and discuss approaches further.
created time in a month
startedpinterest/bender
started time in 2 months
PR opened layeh/radius
Adding a simple logger to PacketServer. Implementation mirrors net/http package internals. If a caller doesn't set a logger on the PacketServer struct, the 'log' package default logger will be used. The log package default logger just dumps to stdout.
pr created time in 3 months
push eventgorhamc/radius
commit sha d637c52c19f674c3fde4b7180f5ca84a997e0756
[radius][packet-server] Add logger to PacketServer
push time in 3 months
push eventgorhamc/radius
commit sha c7fa022000ecc0dc7a19d9bf5b139b1a4bebe3c5
[radius][packet-server] Add logger to PacketServer
push time in 3 months
push eventgorhamc/radius
commit sha 4b6cc7756d169267b0b230c6fd9a85388c93665a
add new logo
commit sha a9ad15de79b9b7ddb772eaf6d4fad9109e69172c
reduce logo size in README
commit sha 13220954963490f7c76183332cbd33b1da6e1c0a
fix invalid attributes being included by Attributes.encodeTo
commit sha 0492ccb85c52a15202ebc7c38ecefd4b5f87ca7d
add (*Packet).MarshalBinary() Closes #75
commit sha b9e79bdeae21eeac3fac756ce17f64ef6462c0e9
merge with layeh upstream
push time in 3 months
issue commentlayeh/radius
I haven't used that package before so I don't have much of an opinion on it. I'm happy to give it a go.
Just logging errors sounds good to me. There's been times when logging validation failures (i.e IsAuthenticRequest/Response=false) would be useful but I think that may fall under debug logging?
comment created time in 3 months
issue openedlayeh/radius
I noticed a TODO comment for adding a logger in server-packet.go. I'm interested in helping out with this, but wanted to clarify a few things first.
- Is this something you would welcome a PR for?
- If so, is there a preferred logger? My preference is typically glog, but happy to use something else if preferred.
created time in 3 months
pull request commentlayeh/radius
[radius][packet] Add MarshalBinary method for Packet
@bontibon thoughts?
comment created time in 3 months
PR closed layeh/radius
It is sometimes useful to be able to access the Packet struct in byte form. One example of this is for validating MessageAuthenticator attributes (see RFC2869).
Encode can modify the Authenticator field of a packet, breaking reliable validation ability when converting a Packet to Bytes. The MarshalBinary method makes it simple to fetch a Packet in byte form without the packet being modified. MarshalBinary also satisfies the BinaryMarshaller interface found in the standard Go encoding package. This may add some flexibility to users of this code base.
Alternatively, if this approach is disliked, perhaps there could be a Raw field added to the Packet struct that is populated upon Parse and Encode calls.
pr closed time in 3 months
startedlayeh/radius
started time in 3 months
push eventgorhamc/radius
commit sha 0558da2f2555d3051573e76bf2c2f6305c751354
Update packet_test.go correcting test error message
push time in 3 months
PR opened layeh/radius
It is sometimes useful to be able to access the Packet struct in byte form. One example of this is for validating MessageAuthenticator attributes (see RFC2869).
Encode can modify the Authenticator field of a packet, breaking reliable validation ability when converting a Packet to Bytes. The MarshalBinary method makes it simple to fetch a Packet in byte form without the packet being modified. MarshalBinary also satisfies the BinaryMarshaller interface found in the standard Go encoding package. This may add some flexibility to users of this code base.
pr created time in 3 months
push eventgorhamc/radius
commit sha 11e50561c26446fc319591f7e997778018113738
[radius][packet] Add MarshalBinary method for Packet
push time in 3 months
fork gorhamc/radius
a Go (golang) RADIUS client and server implementation
https://godoc.org/layeh.com/radius
fork in 3 months