Use the new parsing stuff in remote.c
This commit is contained in:
parent
d8eeaa1f3c
commit
0cecdf5879
3 changed files with 21 additions and 18 deletions
|
@ -3,7 +3,7 @@
|
||||||
* (C)2005, Dan Ponte
|
* (C)2005, Dan Ponte
|
||||||
* BSDL w/ advert.
|
* BSDL w/ advert.
|
||||||
*/
|
*/
|
||||||
/* $Amigan: phoned/include/phoned.h,v 1.10 2005/06/13 03:40:27 dcp1990 Exp $ */
|
/* $Amigan: phoned/include/phoned.h,v 1.11 2005/06/13 21:04:13 dcp1990 Exp $ */
|
||||||
#include <pcre.h> /* fugly, I know... */
|
#include <pcre.h> /* fugly, I know... */
|
||||||
#define VERSION "0.1"
|
#define VERSION "0.1"
|
||||||
#define LOGFILE "/var/log/phoned.log"
|
#define LOGFILE "/var/log/phoned.log"
|
||||||
|
@ -97,6 +97,17 @@ typedef struct cnd_t {
|
||||||
struct cnd_t* last;
|
struct cnd_t* last;
|
||||||
struct cnd_t* next;
|
struct cnd_t* next;
|
||||||
} cond_t;
|
} cond_t;
|
||||||
|
typedef enum stat {
|
||||||
|
init = 0,
|
||||||
|
loginstage,
|
||||||
|
pass
|
||||||
|
} states_t;
|
||||||
|
typedef struct si_t {
|
||||||
|
states_t st;
|
||||||
|
short freeit;
|
||||||
|
FILE* fpo;
|
||||||
|
} state_info_t;
|
||||||
|
|
||||||
#ifdef HAVE_INET_INCS
|
#ifdef HAVE_INET_INCS
|
||||||
typedef struct adll_t {
|
typedef struct adll_t {
|
||||||
in_addr_t addr;
|
in_addr_t addr;
|
||||||
|
@ -132,3 +143,5 @@ cond_t* copy_condition(cond_t* con);
|
||||||
void check_condition(cid_t* cid);
|
void check_condition(cid_t* cid);
|
||||||
void *modem_io(void *k);
|
void *modem_io(void *k);
|
||||||
void give_me_modem(char* str);
|
void give_me_modem(char* str);
|
||||||
|
char *parse_command(const char *cmd, short *cont, state_info_t *s);
|
||||||
|
void begin_dialogue(FILE* fp);
|
||||||
|
|
|
@ -28,7 +28,7 @@
|
||||||
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
|
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
|
||||||
* SUCH DAMAGE.
|
* SUCH DAMAGE.
|
||||||
*/
|
*/
|
||||||
/* $Amigan: phoned/phoned/remote.c,v 1.1 2005/06/13 21:00:07 dcp1990 Exp $ */
|
/* $Amigan: phoned/phoned/remote.c,v 1.2 2005/06/13 21:04:14 dcp1990 Exp $ */
|
||||||
/* system includes */
|
/* system includes */
|
||||||
#include <string.h>
|
#include <string.h>
|
||||||
#include <stdio.h>
|
#include <stdio.h>
|
||||||
|
@ -39,16 +39,6 @@
|
||||||
#define MAXARGS 15
|
#define MAXARGS 15
|
||||||
#define CHK(m) strcasecmp(m, argvect[cpos]) == 0
|
#define CHK(m) strcasecmp(m, argvect[cpos]) == 0
|
||||||
#define RNF(m) s->freeit = 0; free(is); return(m)
|
#define RNF(m) s->freeit = 0; free(is); return(m)
|
||||||
typedef enum stat {
|
|
||||||
init = 0,
|
|
||||||
login,
|
|
||||||
pass
|
|
||||||
} states_t;
|
|
||||||
typedef struct si_t {
|
|
||||||
states_t st;
|
|
||||||
short freeit;
|
|
||||||
FILE* fpo;
|
|
||||||
} state_info_t;
|
|
||||||
|
|
||||||
char *parse_command(cmd, cont, s)
|
char *parse_command(cmd, cont, s)
|
||||||
const char *cmd;
|
const char *cmd;
|
||||||
|
@ -98,7 +88,7 @@ char *parse_command(cmd, cont, s)
|
||||||
RNF("500 OK: Give Me Modem tested.\n");
|
RNF("500 OK: Give Me Modem tested.\n");
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case login:
|
case loginstage:
|
||||||
break;
|
break;
|
||||||
case pass:
|
case pass:
|
||||||
break;
|
break;
|
||||||
|
|
|
@ -54,11 +54,11 @@ void *handclient(k)
|
||||||
void* k;
|
void* k;
|
||||||
{
|
{
|
||||||
int sk = (int)k;
|
int sk = (int)k;
|
||||||
char buffer[1024];
|
FILE* tf;
|
||||||
int rlen;
|
lprintf(info, "Incoming client.");
|
||||||
rlen = recv(sk, buffer, sizeof(buffer), 0);
|
tf = fdopen(sk, "r+");
|
||||||
lprintf(debug, "Client said %s.", buffer);
|
begin_dialogue(tf);
|
||||||
close(sk);
|
fclose(tf);
|
||||||
pthread_exit(NULL);
|
pthread_exit(NULL);
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue