Lines Matching defs:fsinfo
49 u_char fsinfo[2 * DOSBOOTBLOCKSIZE];
202 || read(dosfs, fsinfo, sizeof fsinfo) != sizeof fsinfo) {
203 perr("could not read fsinfo block");
206 if (memcmp(fsinfo, "RRaA", 4)
207 || memcmp(fsinfo + 0x1e4, "rrAa", 4)
208 || fsinfo[0x1fc]
209 || fsinfo[0x1fd]
210 || fsinfo[0x1fe] != 0x55
211 || fsinfo[0x1ff] != 0xaa
212 || fsinfo[0x3fc]
213 || fsinfo[0x3fd]
214 || fsinfo[0x3fe] != 0x55
215 || fsinfo[0x3ff] != 0xaa) {
216 pwarn("Invalid signature in fsinfo block\n");
218 memcpy(fsinfo, "RRaA", 4);
219 memcpy(fsinfo + 0x1e4, "rrAa", 4);
220 fsinfo[0x1fc] = fsinfo[0x1fd] = 0;
221 fsinfo[0x1fe] = 0x55;
222 fsinfo[0x1ff] = 0xaa;
223 fsinfo[0x3fc] = fsinfo[0x3fd] = 0;
224 fsinfo[0x3fe] = 0x55;
225 fsinfo[0x3ff] = 0xaa;
229 || write(dosfs, fsinfo, sizeof fsinfo)
230 != sizeof fsinfo) {
239 boot->FSFree = fsinfo[0x1e8] + (fsinfo[0x1e9] << 8)
240 + (fsinfo[0x1ea] << 16)
241 + (fsinfo[0x1eb] << 24);
242 boot->FSNext = fsinfo[0x1ec] + (fsinfo[0x1ed] << 8)
243 + (fsinfo[0x1ee] << 16)
244 + (fsinfo[0x1ef] << 24);
339 u_char fsinfo[2 * DOSBOOTBLOCKSIZE];
343 || read(dosfs, fsinfo, sizeof fsinfo) != sizeof fsinfo) {
344 perr("could not read fsinfo block");
347 fsinfo[0x1e8] = (u_char)boot->FSFree;
348 fsinfo[0x1e9] = (u_char)(boot->FSFree >> 8);
349 fsinfo[0x1ea] = (u_char)(boot->FSFree >> 16);
350 fsinfo[0x1eb] = (u_char)(boot->FSFree >> 24);
351 fsinfo[0x1ec] = (u_char)boot->FSNext;
352 fsinfo[0x1ed] = (u_char)(boot->FSNext >> 8);
353 fsinfo[0x1ee] = (u_char)(boot->FSNext >> 16);
354 fsinfo[0x1ef] = (u_char)(boot->FSNext >> 24);
357 || write(dosfs, fsinfo, sizeof fsinfo)
358 != sizeof fsinfo) {