xref: /inferno-os/appl/cmd/unmount.b (revision 37da2899f40661e3e9631e497da8dc59b971cbd0)
1implement Unmount;
2
3include "sys.m";
4include "draw.m";
5
6FD: import Sys;
7Context: import Draw;
8
9Unmount: module
10{
11	init:	fn(ctxt: ref Context, argv: list of string);
12};
13
14sys: Sys;
15stderr: ref FD;
16
17usage()
18{
19	sys->fprint(stderr, "Usage: unmount [source] target\n");
20}
21
22init(nil: ref Context, argv: list of string)
23{
24	r: int;
25
26	sys = load Sys Sys->PATH;
27
28	stderr = sys->fildes(2);
29
30	argv = tl argv;
31
32	case len argv {
33	* =>
34		usage();
35		return;
36	1 =>
37		r = sys->unmount(nil, hd argv);
38	2 =>
39		r = sys->unmount(hd argv, hd tl argv);
40	};
41
42	if(r < 0)
43		sys->fprint(stderr, "unmount: %r\n");
44}
45