add normalize_dn

This commit is contained in:
leitner
2008-04-20 07:15:02 +00:00
parent 2f378d3b8a
commit 25ae04b54a

26
normalize_dn.c Normal file
View File

@@ -0,0 +1,26 @@
#include <stddef.h>
#include <ctype.h>
/* "ou=fnord; O=fefe; c=de" -> "ou=fnord,o=fefe,c=de" */
/* returns the length of the new string */
size_t normalize_dn(char* dest,const char* src,int len) {
int makelower=1;
char* orig=dest;
while (len) {
if (*src==';' || *src==',') {
*dest=',';
while (len>1 && src[1]==' ') { ++src; --len; }
makelower=1;
} else {
if (makelower)
*dest=tolower(*src);
else
*dest=*src;
if (*dest=='=') makelower=0;
}
++dest;
++src;
--len;
}
return dest-orig;
}