141 |
break; |
break; |
142 |
|
|
143 |
case TASK_DEVICE: |
case TASK_DEVICE: |
144 |
if(!DeviceInfo_Usage(s->devinfo, s->path)) { |
if(!DeviceInfo_Usage(s->devinfo, s->path) || stat(s->path, &stat_buf) != 0 ) { |
145 |
fprintf(stdout, "Device '%s' is not accessible\n\t" |
fprintf(stdout, |
146 |
"Space: - Inodes: -\n", s->name); |
"Device '%s' is not accessible\n\t" |
147 |
|
"Space: - Inodes: -\n\t" |
148 |
|
"Permission: -\n", |
149 |
|
s->name); |
150 |
} else { |
} else { |
151 |
|
|
152 |
if(s->devinfo->f_files > 0) { |
if(s->devinfo->f_files > 0) { |
153 |
|
|
154 |
fprintf(stdout, "Device '%s' is accessible\n\t" |
fprintf(stdout, |
155 |
"Space: %.1f%% [%.1f MB] Inodes: %.1f%% [%ld objects]\n", |
"Device '%s' is accessible\n\t" |
156 |
|
"Space: %.1f%% [%.1f MB] Inodes: %.1f%% [%ld objects]\n\t" |
157 |
|
"Permission: %o\n", |
158 |
s->name, |
s->name, |
159 |
(float) 100 * (s->devinfo->f_blocks - |
(float) 100 * (s->devinfo->f_blocks - |
160 |
s->devinfo->f_blocksfree) / |
s->devinfo->f_blocksfree) / |
163 |
1048576 * s->devinfo->f_bsize, |
1048576 * s->devinfo->f_bsize, |
164 |
(float) 100 * (s->devinfo->f_files - s->devinfo->f_filesfree) / |
(float) 100 * (s->devinfo->f_files - s->devinfo->f_filesfree) / |
165 |
s->devinfo->f_files, |
s->devinfo->f_files, |
166 |
s->devinfo->f_files - s->devinfo->f_filesfree); |
s->devinfo->f_files - s->devinfo->f_filesfree, |
167 |
|
(int)(stat_buf.st_mode & 07777)); |
168 |
|
|
169 |
} else { |
} else { |
170 |
|
|
171 |
fprintf(stdout, "Device '%s' is accessible\n\t" |
fprintf(stdout, "Device '%s' is accessible\n\t" |
172 |
"Space: %.1f%% [%.1f MB]\n", |
"Space: %.1f%% [%.1f MB]\n\t" |
173 |
|
"Permission: %o\n", |
174 |
s->name, |
s->name, |
175 |
(float) 100 * (s->devinfo->f_blocks - |
(float) 100 * (s->devinfo->f_blocks - |
176 |
s->devinfo->f_blocksfree) / s->devinfo->f_blocks, |
s->devinfo->f_blocksfree) / s->devinfo->f_blocks, |
177 |
(float) (s->devinfo->f_blocks - s->devinfo->f_blocksfree) / |
(float) (s->devinfo->f_blocks - s->devinfo->f_blocksfree) / |
178 |
1048576 * s->devinfo->f_bsize); |
1048576 * s->devinfo->f_bsize, |
179 |
|
(int)(stat_buf.st_mode & 07777)); |
180 |
} |
} |
181 |
|
|
182 |
} |
} |