diff options
Diffstat (limited to 'server.c')
-rw-r--r-- | server.c | 14 |
1 files changed, 14 insertions, 0 deletions
@@ -12,6 +12,7 @@ #include <errno.h> #include <socket.h> #include <fcntl.h> +#include <ctype.h> #define AD_PORT 3268 #define AD_PORT_SSL 636 @@ -121,6 +122,19 @@ void server_setHomeTemplate(const char *server, const char *hometemplate) if (count > 5) printf("WARNING: Too many '%%' in Home Template for %s. Don't forget to replace literal '%%' with '%%%%'\n", server); } +void server_setHomeAttribute(const char *server, const char *homeattribute) +{ + server_t *entry = server_create(server); + if (entry == NULL || entry->sslContext != NULL) return; + free((void*)entry->homeAttr.s); + entry->homeAttr.l = strlen(homeattribute); + char *tmp = strdup(homeattribute); + for (size_t i = 0; i < entry->homeAttr.l; ++i) { + tmp[i] = tolower(tmp[i]); + } + entry->homeAttr.s = tmp; +} + void server_setFingerprint(const char *server, const char *fingerprint) { server_t *entry = server_create(server); |