Lines Matching defs:disk
57 ufs_disk_close(struct uufsd *disk)
59 ERROR(disk, NULL);
60 close(disk->d_fd);
61 if (disk->d_inoblock != NULL) {
62 free(disk->d_inoblock);
63 disk->d_inoblock = NULL;
65 if (disk->d_mine & MINE_NAME) {
66 free((char *)(uintptr_t)disk->d_name);
67 disk->d_name = NULL;
69 if (disk->d_sbcsum != NULL) {
70 free(disk->d_sbcsum);
71 disk->d_sbcsum = NULL;
77 ufs_disk_fillout(struct uufsd *disk, const char *name)
79 if (ufs_disk_fillout_blank(disk, name) == -1) {
82 if (sbread(disk) == -1) {
83 ERROR(disk, "could not read superblock to fill out disk");
90 ufs_disk_fillout_blank(struct uufsd *disk, const char *name)
99 ERROR(disk, NULL);
116 /* Possibly a disk image, give it a try. */
138 ERROR(disk, "could not find special device");
144 ERROR(disk, "could not find special device");
149 ERROR(disk, "could not open special device");
153 disk->d_bsize = 1;
154 disk->d_ccg = 0;
155 disk->d_fd = fd;
156 disk->d_inoblock = NULL;
157 disk->d_inomin = 0;
158 disk->d_inomax = 0;
159 disk->d_lcg = 0;
160 disk->d_mine = 0;
161 disk->d_ufs = 0;
162 disk->d_error = NULL;
163 disk->d_sbcsum = NULL;
168 ERROR(disk, "could not allocate memory for disk name");
171 disk->d_mine |= MINE_NAME;
173 disk->d_name = name;
179 ufs_disk_write(struct uufsd *disk)
181 ERROR(disk, NULL);
183 if (disk->d_mine & MINE_WRITE)
186 close(disk->d_fd);
188 disk->d_fd = open(disk->d_name, O_RDWR);
189 if (disk->d_fd < 0) {
190 ERROR(disk, "failed to open disk for writing");
194 disk->d_mine |= MINE_WRITE;