version 1.4, 2000/11/28 04:02:56 |
version 1.5, 2000/12/01 07:34:48 |
|
|
/* -*- mode: C -*- */ |
/* -*- mode: C -*- */ |
/* $OpenXM: OpenXM/src/oxc/oxc.c,v 1.3 2000/11/18 06:03:42 ohara Exp $ */ |
/* $OpenXM: OpenXM/src/oxc/oxc.c,v 1.4 2000/11/28 04:02:56 ohara Exp $ */ |
|
|
#include <stdio.h> |
#include <stdio.h> |
#include <stdlib.h> |
#include <stdlib.h> |
Line 60 static int basic0[] = { |
|
Line 60 static int basic0[] = { |
|
CMO_STRING, |
CMO_STRING, |
CMO_MATHCAP, |
CMO_MATHCAP, |
CMO_LIST, |
CMO_LIST, |
0}; |
0 |
|
}; |
|
|
|
/* We assume that data has the following format: |
|
LENGTH hostname '\0' port '\0' password '\0' |
|
where LENGTH is an integer with network byte order and its value |
|
equals to the sum of the length of three data above. |
|
*/ |
|
|
|
void pipe_read_info(char **hostname, int *port, char **password); |
|
|
int main(int argc, char *argv[]) |
int main(int argc, char *argv[]) |
{ |
{ |
OXFILE *oxfp; |
OXFILE *oxfp; |
Line 78 int main(int argc, char *argv[]) |
|
Line 87 int main(int argc, char *argv[]) |
|
break; |
break; |
case 'c': |
case 'c': |
password = optarg; |
password = optarg; |
|
|
break; |
break; |
case 'p': |
case 'p': |
port = atoi(optarg); |
port = atoi(optarg); |
Line 94 int main(int argc, char *argv[]) |
|
Line 104 int main(int argc, char *argv[]) |
|
argc -= optind; |
argc -= optind; |
argv += optind; |
argv += optind; |
|
|
|
if (strlen(remote_host) == 0) { |
|
pipe_read_info(&remote_host, &port, &password); |
|
port_s = malloc(32); |
|
sprintf(port_s, "%d", port); |
|
} |
if (oxlog) { |
if (oxlog) { |
execlp(xterm, xterm, "-e", myname, |
execlp(xterm, xterm, "-e", myname, |
"-h", remote_host, "-p", port_s, "-c", password); |
"-h", remote_host, "-p", port_s, "-c", password); |
} |
} |
|
|
fprintf(stderr, "start connection!\n"); |
fprintf(stderr, "start connection!\n"); |
if (strlen(remote_host) == 0 || strlen(password) == 0 || port == 0) { |
if ((oxfp = connection()) == NULL) { |
fprintf(stderr, "oxc: invalid arguments.\n"); |
|
fprintf(stderr, "usage: oxc -p port -h host -c password.\n"); |
|
}else if ((oxfp = connection()) == NULL) { |
|
fprintf(stderr, "oxc: cannot connect.\n"); |
fprintf(stderr, "oxc: cannot connect.\n"); |
}else { |
}else { |
fprintf(stderr, "oxc: oxfp = %p, fd = %d\n", oxfp, oxfp->fd); |
fprintf(stderr, "oxc: oxfp = %p, fd = %d\n", oxfp, oxfp->fd); |