Chameleon

Chameleon Svn Source Tree

Root/tags/2.0/i386/libsaio/ext2fs.c

Source at commit 1753 created 12 years 6 months ago.
By blackosx, Merge recent package installer changes from my branch in to trunk. Includes updates to Credits, installation log messages and localizable strings. Check for existence of EFI system partition before running the check for previous Chameleon installations. Only backup /Extra folder if necessary when running upgrade install.
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: 1753