Since my talk with Robin on Thursday regarding the autogenerated userinfo.xml, I finally found some time today to get all the info’s I need out of userinfo.xml.

Since I don’t really want to manually enter all those mail addresses from userinfo into LDAP manually, I figured sed might be my best friend. BUT sed ain’t easy .. But thanks to Fabian and Gilles, I learned something new about sed today ..

Basically I searched for a way to transform userinfo.xml into a datafile for ldapedit.

As most of you know, userinfo.xml would look like this:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10

      Christian
      Heim

    0x9A9F68E6
    phreak@gentoo.org
    06 August 2005

    vserver, openvz, kernel
    Germany, Stralsund

So the first step would be to simply use egrep on userinfo.xm l to filter only the things I needed ..

1
2
celsius roll-call [0] $ egrep "(username=|<email |)"
userinfo.xml

That looks more like a processable list to me. Now I only needed to convert the into dn, the into mail and be done with it.

This is what I applied on top of the above filter:

1
2
3
4
5
celsius roll-call [0] $ egrep "(username=|<email |)"
userinfo.xml |
 sed -e "s,.*$,,ou=devs,dc=gentoo,dc=orgnadd: mail,"
     -e 's,.*,mail: ,'
     -e "s,,," -e "s,  ,,"

And that’s it, I just need to check the dn’s for all the users, and when I’m done with that, finito!