@@ -20,7 +20,7 @@ const (
2020 ControlTypeManageDsaIT = "2.16.840.1.113730.3.4.2"
2121 // ControlTypeWhoAmI - https://tools.ietf.org/html/rfc4532
2222 ControlTypeWhoAmI = "1.3.6.1.4.1.4203.1.11.3"
23- // ControlTypeSubTreeDelete - https://datatracker.ietf.org/doc/html/draft-armijo-ldap-treedelete-02
23+ // ControlTypeSubtreeDelete - https://datatracker.ietf.org/doc/html/draft-armijo-ldap-treedelete-02
2424 ControlTypeSubtreeDelete = "1.2.840.113556.1.4.805"
2525
2626 // ControlTypeMicrosoftNotification - https://msdn.microsoft.com/en-us/library/aa366983(v=vs.85).aspx
@@ -232,7 +232,7 @@ func (c *ControlManageDsaIT) GetControlType() string {
232232
233233// Encode returns the ber packet representation
234234func (c * ControlManageDsaIT ) Encode () * ber.Packet {
235- //FIXME
235+ // FIXME
236236 packet := ber .Encode (ber .ClassUniversal , ber .TypeConstructed , ber .TagSequence , nil , "Control" )
237237 packet .AppendChild (ber .NewString (ber .ClassUniversal , ber .TypePrimitive , ber .TagOctetString , ControlTypeManageDsaIT , "Control Type (" + ControlTypeMap [ControlTypeManageDsaIT ]+ ")" ))
238238 if c .Criticality {
@@ -439,18 +439,18 @@ func DecodeControl(packet *ber.Packet) (Control, error) {
439439
440440 for _ , child := range sequence .Children {
441441 if child .Tag == 0 {
442- //Warning
442+ // Warning
443443 warningPacket := child .Children [0 ]
444444 val , err := ber .ParseInt64 (warningPacket .Data .Bytes ())
445445 if err != nil {
446446 return nil , fmt .Errorf ("failed to decode data bytes: %s" , err )
447447 }
448448 if warningPacket .Tag == 0 {
449- //timeBeforeExpiration
449+ // timeBeforeExpiration
450450 c .Expire = val
451451 warningPacket .Value = c .Expire
452452 } else if warningPacket .Tag == 1 {
453- //graceAuthNsRemaining
453+ // graceAuthNsRemaining
454454 c .Grace = val
455455 warningPacket .Value = c .Grace
456456 }
@@ -524,16 +524,21 @@ func NewControlBeheraPasswordPolicy() *ControlBeheraPasswordPolicy {
524524 }
525525}
526526
527+ // ControlSubtreeDelete implements the subtree delete control described in
528+ // https://datatracker.ietf.org/doc/html/draft-armijo-ldap-treedelete-02
527529type ControlSubtreeDelete struct {}
528530
531+ // GetControlType returns the OID
529532func (c * ControlSubtreeDelete ) GetControlType () string {
530533 return ControlTypeSubtreeDelete
531534}
532535
536+ // NewControlSubtreeDelete returns a ControlSubtreeDelete control.
533537func NewControlSubtreeDelete () * ControlSubtreeDelete {
534538 return & ControlSubtreeDelete {}
535539}
536540
541+ // Encode returns the ber packet representation
537542func (c * ControlSubtreeDelete ) Encode () * ber.Packet {
538543 packet := ber .Encode (ber .ClassUniversal , ber .TypeConstructed , ber .TagSequence , nil , "Control" )
539544 packet .AppendChild (ber .NewString (ber .ClassUniversal , ber .TypePrimitive , ber .TagOctetString , ControlTypeSubtreeDelete , "Control Type (" + ControlTypeMap [ControlTypeSubtreeDelete ]+ ")" ))
0 commit comments