diff --git a/ldap_match.c b/ldap_match.c index 09a0bae..1b3ca4c 100644 --- a/ldap_match.c +++ b/ldap_match.c @@ -10,9 +10,6 @@ static const char* findattr(struct ldaprec* f,struct string* name) { int i; if (!matchstring(name,"dn")) return f->dn; - if (!matchstring(name,"mail")) return f->mail; - if (!matchstring(name,"sn")) return f->sn; - if (!matchstring(name,"cn")) return f->cn; for (i=0; ia[i].name)) return f->a[i].value; diff --git a/ldif.h b/ldif.h index 0c90886..88ef81a 100644 --- a/ldif.h +++ b/ldif.h @@ -9,7 +9,7 @@ struct attribute { }; struct ldaprec { - long dn, mail, sn, cn; /* most often encountered records */ + long dn; int n; /* number of attributes */ struct attribute a[ATTRIBS]; struct ldaprec* next; diff --git a/ldif_parse.c b/ldif_parse.c index 10a5c19..dff7279 100644 --- a/ldif_parse.c +++ b/ldif_parse.c @@ -12,15 +12,12 @@ mduptab_t attributes,classes; mstorage_t stringtable; -long dn, mail, sn, cn, objectClass; +long dn, objectClass; unsigned long ldifrecords; static void addattribute(struct ldaprec** l,long name,long val) { if (name==dn) (*l)->dn=val; else - if (name==mail) (*l)->mail=val; else - if (name==sn) (*l)->sn=val; else - if (name==cn) (*l)->cn=val; else { if ((*l)->na[(*l)->n].name=name; (*l)->a[(*l)->n].value=val; @@ -29,7 +26,6 @@ static void addattribute(struct ldaprec** l,long name,long val) { buffer_putsflush(buffer_2,"LDIF parse error: too many attributes!\n"); exit(1); } - } } /* "ou=fnord; O=fefe; c=de" -> "ou=fnord,o=fefe,c=de" */ @@ -60,7 +56,7 @@ static int parserec(buffer* b, struct ldaprec** l) { char buf[8192]; int n,i,eof=0,ofs=0; if (!(*l=malloc(sizeof(struct ldaprec)))) return 2; - (*l)->dn=(*l)->mail=(*l)->sn=(*l)->cn=-1; + (*l)->dn=-1; (*l)->next=0; (*l)->n=0; ldifrecords=0; do { @@ -102,7 +98,7 @@ lookagain: addattribute(l,tmp,val); (*l)->next=m; - m->n=0; m->dn=m->mail=m->sn=m->cn=-1; m->next=0; + m->n=0; m->dn=-1; m->next=0; ofs=0; // dumprec(*l); l=&((*l)->next); @@ -141,9 +137,6 @@ int ldif_parse(const char* filename) { buffer in=BUFFER_INIT(read,fd,buf,sizeof buf); if (fd<0) return 1; dn=mduptab_add(&attributes,"dn"); - mail=mduptab_add(&attributes,"mail"); - sn=mduptab_add(&attributes,"sn"); - cn=mduptab_add(&attributes,"cn"); objectClass=mduptab_add(&attributes,"objectClass"); { int res=parserec(&in,&first); diff --git a/parse.c b/parse.c index fea0e0a..4458440 100644 --- a/parse.c +++ b/parse.c @@ -27,21 +27,6 @@ void dumprec(struct ldaprec* l) { buffer_puts(buffer_1,"\n"); } else buffer_puts(buffer_1,"no dn?!\n"); - if (l->mail>=0) { - buffer_puts(buffer_1,"mail: "); - buffer_puts(buffer_1,stringtable.root+l->mail); - buffer_puts(buffer_1,"\n"); - } - if (l->sn>=0) { - buffer_puts(buffer_1,"sn: "); - buffer_puts(buffer_1,stringtable.root+l->sn); - buffer_puts(buffer_1,"\n"); - } - if (l->cn>=0) { - buffer_puts(buffer_1,"cn: "); - buffer_puts(buffer_1,stringtable.root+l->cn); - buffer_puts(buffer_1,"\n"); - } for (i=0; in; ++i) { buffer_puts(buffer_1,attributes.strings.root+l->a[i].name); buffer_puts(buffer_1,": "); @@ -89,9 +74,6 @@ int main() { dumprec(x); return 1; } - if (x->mail>=0) len+=8; - if (x->sn>=0) len+=8; - if (x->cn>=0) len+=8; for (i=0; in; ++i) { len+=8; if (x->a[i].name==objectClass) oc=1; @@ -158,12 +140,7 @@ int main() { uint32_t* record_offsets=alloca(4*record_count); uint32_t cur=0; while (x) { -// char* old=dest; int i=x->n+1; - if (x->mail>=0) ++i; - if (x->sn>=0) ++i; - if (x->cn>=0) ++i; -// fdprintf(2,"writing record \"%s\": ",map+x->dn+offset_stringtable); record_offsets[cur]=dest-map; ++cur; uint32_pack(dest,i); uint32_pack(dest+4,0); dest+=8; uint32_pack(dest,x->dn+offset_stringtable); @@ -175,21 +152,6 @@ int main() { } } dest+=8; - if (x->mail>=0) { - uint32_pack(dest,mail+offset_attributes); - uint32_pack(dest+4,x->mail+offset_stringtable); - dest+=8; - } - if (x->sn>=0) { - uint32_pack(dest,sn+offset_attributes); - uint32_pack(dest+4,x->sn+offset_stringtable); - dest+=8; - } - if (x->cn>=0) { - uint32_pack(dest,cn+offset_attributes); - uint32_pack(dest+4,x->cn+offset_stringtable); - dest+=8; - } for (i=0; in; ++i) { if (x->a[i].name>=0) { uint32_pack(dest,x->a[i].name+offset_attributes); @@ -200,7 +162,6 @@ int main() { dest+=8; } } -// fdprintf(2,"length %d\n",dest-old); x=x->next; } // fdprintf(2,"actual offset of record_index: %lu\n",dest-map);