Make getAttribute return an empty array instead of nil when key not found

pull/8/head
Alex 3 years ago
parent 851573e28f
commit 6f893138a3
  1. 5
      main.go
  2. 9
      write.go

@ -359,7 +359,7 @@ func (server *Server) getAttribute(dn string, attr string) ([]string, error) {
}
if pair == nil {
return nil, nil
return []string{}, nil
}
return parseValue(pair.Value)
@ -448,9 +448,6 @@ func (server *Server) handleBindInternal(state *State, r *message.BindRequest) (
if err != nil {
return ldap.LDAPResultOperationsError, err
}
if passwd == nil {
return ldap.LDAPResultNoSuchObject, fmt.Errorf("%s has no password", string(r.Name()))
}
for _, hash := range passwd {
valid := SSHAMatches(hash, []byte(r.AuthenticationSimple()))

@ -118,9 +118,6 @@ func (server *Server) handleAddInternal(state *State, r *message.AddRequest) (in
server.logger.Warnf("Could not add %s to memberOf of %s: %s", dn, member, err)
continue
}
if memberGroups == nil {
memberGroups = []string{}
}
alreadyMember := false
for _, mb := range memberGroups {
@ -473,9 +470,6 @@ func (server *Server) handleModifyInternal(state *State, r *message.ModifyReques
server.logger.Warnf("Could not add %s to memberOf of %s: %s", dn, addMem, err)
continue
}
if memberOf == nil {
memberOf = []string{}
}
alreadyMember := false
for _, mb := range memberOf {
@ -501,9 +495,6 @@ func (server *Server) handleModifyInternal(state *State, r *message.ModifyReques
server.logger.Warnf("Could not remove %s from memberOf of %s: %s", dn, delMem, err)
continue
}
if memberOf == nil {
memberOf = []string{}
}
newMemberOf := []string{}
for _, g := range memberOf {
if g != dn {

Loading…
Cancel
Save