rlidwka / sinopia-ldap

LDAP auth plugin for sinopia
18 stars 12 forks source link

TypeError when ldap_user.memberOf property is missing #3

Closed sempasha closed 9 years ago

sempasha commented 9 years ago

Not all of LDAP servers supports memberOf attribute of user, in my case GOSA server respond for authenticate query with object

{ dn: 'uid=sampleuser,ou=users,dc=example,dc=com',
  controls: [],
  uid: 'sampleuser',
  gender: 'M',
  preferredLanguage: 'en_US',
  homeDirectory: '/home/sampleuser',
  sn: 'Lastname',
  givenName: 'Firstname',
  cn: 'Firstname Lastname',
  gidNumber: '80',
  loginShell: '/usr/local/bin/zsh',
  sambaPwdLastSet: '1351061334',
  sambaBadPasswordCount: '0',
  sambaBadPasswordTime: '0',
  uidNumber: '21008',
  sambaLMPassword: '015040AA6E7F48C415414391E5788F01',
  sambaNTPassword: 'ED3F7A0B4D53B7E826452D3B1BD2E553',
  objectClass:
   [ 'top',
     'person',
     'organizationalPerson',
     'inetOrgPerson',
     'gosaAccount',
     'posixAccount',
     'shadowAccount',
     'hostObject' ],
  host: [] }

As you can see there is no memberOf attribute, so TypeError: Cannot read property 'length' of undefined at index.js:44:45 appears. More about missing memberOf: