|
|
1.1 root 1: /* x_mount.c - x_mount, mprint */
2:
3: #include <conf.h>
4: #include <kernel.h>
5: #include <io.h>
6: #include <name.h>
7:
8: #define PADTO 24
9:
10: /*------------------------------------------------------------------------
11: * x_mount - (command mount) change or display namespace table
12: *------------------------------------------------------------------------
13: */
14: COMMAND x_mount(stdin, stdout, stderr, nargs, args)
15: int stdin, stdout, stderr, nargs;
16: char *args[];
17: {
18: int dev;
19:
20: if (nargs == 1)
21: return(mprint(stdin, stdout, stderr));
22: if (nargs != 4) {
23: fprintf(stderr,"use: mount [prefix device new_prefix]\n");
24: return(SYSERR);
25: }
26: for (dev=0 ; dev<NDEVS ; dev++)
27: if (strcmp(args[2], devtab[dev].dvname) == 0)
28: break;
29: if (dev >= NDEVS)
30: if (strcmp(args[2],"SYSERR") == 0)
31: dev = SYSERR;
32: else {
33: fprintf(stderr, "Device %s not found\n", args[2]);
34: return(SYSERR);
35: }
36: if (mount(args[1], dev, args[3]) == SYSERR) {
37: fprintf(stderr, "Mount failed\n");
38: return(SYSERR);
39: }
40: return(OK);
41: }
42:
43:
44: /*------------------------------------------------------------------------
45: * mprint - print the current contents of the namespace prefix table
46: *------------------------------------------------------------------------
47: */
48: LOCAL mprint(stdin, stdout, stderr)
49: int stdin, stdout, stderr;
50: {
51: struct nament *nptr;
52: int i, len, dev;
53: char str[80];
54: char *p;
55:
56: for (i=0 ; i<Nam.nnames ; i++) {
57: nptr = & Nam.nametab[i];
58: sprintf(str, "\"%-s\"", nptr->npre);
59: for (len=strlen(str) ; len < PADTO ; len++)
60: str[len] = ' ';
61: write(stdout, str, PADTO);
62: dev = nptr->ndev;
63: p = isbaddev(dev) ? "SYSERR" : devtab[dev].dvname;
64: sprintf(str, " -> (%-9s) \"%s\"\n", p, nptr->nrepl);
65: write(stdout, str, strlen(str));
66: }
67: return(OK);
68: }
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.