Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- function search_ldap(names,i,cb) {
- if (!names[i]) return cb();
- var name=names[i];
- console.log('- processing '+name);
- var ldap = new LDAP({
- uri: 'ldap://cerema.fr'
- , validatecert: false
- , connecttimeout: -1
- , base: basedn
- , attrs: '*'
- , filter: '(objectClass=*)'
- , scope: LDAP.SUBTREE
- , }, function (err) {
- // connected and ready
- if (err) {
- cb("UNABLE_TO_CONNECT_TO_AD");
- return;
- };
- ldap.bind({
- binddn: Config.user
- , password: Config.password
- }, function (err) {
- var search_options = {
- base: basedn
- , scope: LDAP.SUBTREE
- , filter: '(|(sAMAccountName='+name+')(sAMAccountName=*'+name+'))'
- , attrs: '*'
- };
- ldap.search(search_options, function (err, data, cookie) {
- if (err) {
- search_ldap(names,i+1,cb)
- return;
- };
- if (data.length==0) {
- search_ldap(names,i+1,cb)
- return;
- };
- data[0].dn = data[0].dn.replace(/\(/g, '\\\\28');
- data[0].dn = data[0].dn.replace(/\)/g, '\\\\29');
- var dn = data[0].dn;
- dn = dn.toLowerCase();
- INSERT.push('INSERT INTO oc_ldap_user_mapping VALUES("'+dn+'","'+name+'","'+name+'");');
- search_ldap(names,i+1,cb);
- });
- });
- })
- };
- search_ldap(users,0,function() {
- fs.writeFileSync('insert.sql',INSERT.join('\n'));
- });
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement