Chameleon

Chameleon Svn Source Tree

Root/branches/meklort/i386/libsaio/ext2fs.c

Source at commit 444 created 13 years 10 months ago.
By zef, Fixed calling getBootVolumeDescription() with properly adjusted strMaxLen values. Removed broken optionKey setting. Now using strncat() for adding proper NULL termination in destination strings.
1/*
2 * ext2fs.c
3 *
4 *
5 * Created by mackerintel on 1/26/09.
6 * Copyright 2009 __MyCompanyName__. All rights reserved.
7 *
8 */
9
10#include "libsaio.h"
11#include "sl.h"
12#include "ext2fs.h"
13
14#define EX2ProbeSize2048
15
16bool EX2Probe (const void *buf)
17{
18return (OSReadLittleInt16(buf+0x438,0)==0xEF53);
19}
20
21void EX2GetDescription(CICell ih, char *str, long strMaxLen)
22{
23char * buf=malloc (EX2ProbeSize);
24str[0]=0;
25if (!buf)
26return;
27Seek(ih, 0);
28Read(ih, (long)buf, EX2ProbeSize);
29if (!EX2Probe (buf))
30{
31free (buf);
32return;
33}
34if (OSReadLittleInt32 (buf+0x44c,0)<1)
35{
36free (buf);
37return;
38}
39str[strMaxLen]=0;
40strncpy (str, buf+0x478, min (strMaxLen, 16));
41free (buf);
42}
43

Archive Download this file

Revision: 444