diff --git a/src/Makefile.am b/src/Makefile.am index d6257b9..a7f9547 100644 --- a/src/Makefile.am +++ b/src/Makefile.am @@ -20,7 +20,7 @@ ejabberdauth_SOURCES = main.c eport.c tls.c imap.c smtp.c ejabberdauth_LDADD = $(LIBS) $(OPENSSL_LIBS) if BUILD_TESTS -testimap_SOURCES = tls.c imap.c tests/testimap.c +testimap_SOURCES = tls.c imap.c tests/testimap.c tests/misc.c testimap_LDADD = $(LIBS) $(OPENSSL_LIBS) endif diff --git a/src/tests/misc.c b/src/tests/misc.c new file mode 100644 index 0000000..823ca83 --- /dev/null +++ b/src/tests/misc.c @@ -0,0 +1,41 @@ +/* + * ejabberd external authentication program + * + * (c) Alexander Vdolainen 2013, 2018, 2019, 2021 + * + * this is free software: you can redistribute it and/or modify it + * under the terms of the GNU General Public License as published + * by the Free Software Foundation, either version 2 of the License, or + * (at your option) any later version. + * + * this is distributed in the hope that it will be useful, but + * WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. + * See the GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see ."; + * + */ + +#include + +int ejda_username_split(char *buf, char **user, char **domain) +{ + char *u, *d; + + if(!buf) return 1; + + u = strchr(buf, '@'); + if(!u) return 1; + else { + *u = '\0'; + *u++; + d = u; u = buf; + } + + *user = u; *domain = d; + + return 0; +} + diff --git a/src/tests/testimap.c b/src/tests/testimap.c index 21dacc9..679db68 100644 --- a/src/tests/testimap.c +++ b/src/tests/testimap.c @@ -60,24 +60,7 @@ static void print_help(const char *cname) return; } -static int ejda_username_split(char *buf, char **user, char **domain) -{ - char *u, *d; - - if(!buf) return 1; - - u = strchr(buf, '@'); - if(!u) return 1; - else { - *u = '\0'; - *u++; - d = u; u = buf; - } - - *user = u; *domain = d; - - return 0; -} +extern int ejda_username_split(char *buf, char **user, char **domain); int main(int argc, char **argv) {