1 /*
2  * $Id: wr_dumpset.c,v 5.2.1.2 90/12/21 16:46:50 jsp Alpha $
3  *
4  * Copyright (c) 1989 Jan-Simon Pendry
5  * Copyright (c) 1989 Imperial College of Science, Technology & Medicine
6  * Copyright (c) 1989 The Regents of the University of California.
7  * All rights reserved.
8  *
9  * This code is derived from software contributed to Berkeley by
10  * Jan-Simon Pendry at Imperial College, London.
11  *
12  * %sccs.include.redist.c%
13  *
14  *	@(#)wr_dumpset.c	5.2 (Berkeley) 03/17/91
15  */
16 
17 #include "../fsinfo/fsinfo.h"
18 
19 static int write_dumpset_info(ef, q)
20 FILE *ef;
21 qelem *q;
22 {
23 	int errors = 0;
24 	disk_fs *dp;
25 
26 	ITER(dp, disk_fs, q) {
27 		if (dp->d_dumpset) {
28 			fprintf(ef, "%s\t%s:%-30s\t# %s\n",
29 				dp->d_dumpset,
30 				dp->d_host->h_lochost ?
31 				dp->d_host->h_lochost :
32 				dp->d_host->h_hostname,
33 				dp->d_mountpt,
34 				dp->d_dev);
35 		}
36 	}
37 	return errors;
38 }
39 
40 int write_dumpset(q)
41 qelem *q;
42 {
43 	int errors = 0;
44 
45 	if (dumpset_pref) {
46 		FILE *ef = pref_open(dumpset_pref, "dumpsets", info_hdr, "exabyte dumpset");
47 		if (ef) {
48 			host *hp;
49 			ITER(hp, host, q) {
50 				if (hp->h_disk_fs) {
51 					errors += write_dumpset_info(ef, hp->h_disk_fs);
52 				}
53 			}
54 			errors += pref_close(ef);
55 		} else {
56 			errors++;
57 		}
58 	}
59 
60 	return errors;
61 }
62