diff -ruN astmanproxy-1.21.orig/src/config.c astmanproxy-1.21/src/config.c --- astmanproxy-1.21.orig/src/config.c 2006-07-01 17:43:37.000000000 +0200 +++ astmanproxy-1.21/src/config.c 2007-08-23 23:03:52.000000000 +0200 @@ -33,7 +33,7 @@ s = srvspec; do { - *s = tolower(*s); + // GMI *s = tolower(*s); if ( *s == ',' ) { ccount++; continue; @@ -83,7 +83,7 @@ memset (value,0,sizeof value); do { - *s = tolower(*s); + // GMI *s = tolower(*s); if ( *s == ' ' || *s == '\t') continue; diff -ruN astmanproxy-1.21.orig/src/config_perms.c astmanproxy-1.21/src/config_perms.c --- astmanproxy-1.21.orig/src/config_perms.c 2006-07-01 17:43:37.000000000 +0200 +++ astmanproxy-1.21/src/config_perms.c 2007-08-23 23:03:54.000000000 +0200 @@ -75,7 +75,7 @@ memset (value,0,sizeof value); do { - *s = tolower(*s); + // GMI*s = tolower(*s); if ( *s == ' ' || *s == '\t') continue; diff -ruN astmanproxy-1.21.orig/src/include/astmanproxy.h astmanproxy-1.21/src/include/astmanproxy.h --- astmanproxy-1.21.orig/src/include/astmanproxy.h 2006-07-01 17:43:37.000000000 +0200 +++ astmanproxy-1.21/src/include/astmanproxy.h 2007-08-23 23:03:50.000000000 +0200 @@ -28,7 +28,8 @@ #define MAX_HEADERS 256 #define MAX_LEN 1024 -#define PROXY_BANNER "Asterisk Call Manager Proxy" +// GMI TEST #define PROXY_BANNER "Asterisk Call Manager Proxy" +#define PROXY_BANNER "Asterisk Manager Proxy" #define PROXY_SHUTDOWN "ProxyMessage: Proxy Shutting Down" #define ACTION_ID "ActionID" diff -ruN astmanproxy-1.21.orig/src/proxyfunc.c astmanproxy-1.21/src/proxyfunc.c --- astmanproxy-1.21.orig/src/proxyfunc.c 2006-07-01 17:43:37.000000000 +0200 +++ astmanproxy-1.21/src/proxyfunc.c 2007-08-23 23:03:54.000000000 +0200 @@ -87,6 +87,7 @@ memset(&mo, 0, sizeof(struct message)); AddHeader(&mo, "Response: Success"); + AddHeader(&mo, "ActionID: %s", astman_get_header(m, "ActionID")); AddHeader(&mo, "Challenge: %s", s->challenge); s->output->write(s, &mo); @@ -147,11 +148,13 @@ void *ProxyLogin(struct mansession *s, struct message *m) { struct message mo; struct proxy_user *pu; - char *user, *secret, *key; + char *user, *secret, *key, *actionID; user = astman_get_header(m, "Username"); secret = astman_get_header(m, "Secret"); key = astman_get_header(m, "Key"); + actionID = astman_get_header(m, "ActionID"); + memset(&mo, 0, sizeof(struct message)); if( debug ) @@ -163,6 +166,7 @@ if ( !strcmp(user, pu->username) ) { if (!AuthMD5(key, s->challenge, pu->secret) || !strcmp(secret, pu->secret) ) { AddHeader(&mo, "Response: Success"); + AddHeader(&mo, "ActionID: %s", actionID); AddHeader(&mo, "Message: Authentication accepted"); s->output->write(s, &mo); pthread_mutex_lock(&s->lock); @@ -181,7 +185,10 @@ pthread_mutex_unlock(&userslock); if( !pu ) { - SendError(s, "Authentication failed"); + AddHeader(&mo, "Response: Error"); + AddHeader(&mo, "ActionID: %s", actionID); + AddHeader(&mo, "Message: Authentication failed"); + s->output->write(s, &mo); pthread_mutex_lock(&s->lock); s->authenticated = 0; pthread_mutex_unlock(&s->lock); @@ -196,7 +203,9 @@ struct message m; memset(&m, 0, sizeof(struct message)); - AddHeader(&m, "Goodbye: Y'all come back now, y'hear?"); + //AddHeader(&m, "Goodbye: Y'all come back now, y'hear?"); + AddHeader(&m, "Response: Goodbye"); + AddHeader(&m, "Message: Thanks for all the fish."); s->output->write(s, &m);