Annotation of researchv10dc/ipc/internet/tdkexec.c, revision 1.1.1.1

1.1       root        1: #include <dk.h>
                      2: #include <stdio.h>
                      3: #include <sys/ioctl.h>
                      4: 
                      5: tdkexec(hname, cmd)
                      6: char *hname, *cmd;
                      7: {
                      8:        return(_tdkexec(hname, cmd, "exec"));
                      9: }
                     10: 
                     11: ttyexec(hname, cmd)
                     12: char *hname, *cmd ;
                     13: {
                     14:        return (_tdkexec(hname, cmd, "ttyexec")) ;
                     15: }
                     16: 
                     17: mesgexec(hname, cmd)
                     18: char *hname, *cmd;
                     19: {
                     20:        return(_tdkexec(hname, cmd, "mesgexec"));
                     21: }
                     22: 
                     23: _tdkexec(hname, cmd, service)
                     24: char *hname, *cmd;
                     25: char * service ;
                     26: {
                     27:        int rem, v;
                     28:        extern int pk_ld, dkp_ld, tty_ld, dt_ld ;
                     29:        char dialstr[64] ;
                     30:        char cmdname[32] ;
                     31:        extern char *dkerror;
                     32:        register char *cp1, *cp2 ;
                     33: 
                     34:        strcpy(dialstr, hname) ;
                     35:        strcat(dialstr, ".") ;
                     36:        strcat(dialstr, service) ;
                     37:        cp1 = cmdname ; cp2 = cmd ;
                     38:        while (*cp2 && (*cp2 != ' ')) {
                     39:                if (*cp2 == '/')
                     40:                        cp1 = cmdname ;
                     41:                else
                     42:                        *cp1++ = *cp2 ;
                     43:                cp2++ ;
                     44:        }
                     45:        *cp1 = '\0' ;
                     46:        strcat(dialstr, ".") ;
                     47:        strcat(dialstr, cmdname) ;
                     48:        rem = tdkdial(dialstr, 0) ;
                     49:        if (rem < 0) {
                     50:                return(-1);
                     51:        }
                     52:        v = dkproto(rem, dkp_ld);
                     53:        if (v < 0) {
                     54:                dkerror = "tdkexec can't turn on protocol";
                     55:                close(rem);
                     56:                return(-1);
                     57:        }
                     58:        if (tdklogin(rem) < 0)
                     59:                return -1 ;
                     60:        write(rem, cmd, strlen(cmd));
                     61:        write(rem, "\n", 1) ;
                     62:        return(rem);
                     63: }

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.