win32/Makefile: clean hello.exe on "make tidy"
[syslinux.git] / libinstaller / syslinux.h
blobefffb7c0633671f571d968a72ecd6d19fecc6657
1 /* ----------------------------------------------------------------------- *
3 * Copyright 1998-2008 H. Peter Anvin - All Rights Reserved
5 * This program is free software; you can redistribute it and/or modify
6 * it under the terms of the GNU General Public License as published by
7 * the Free Software Foundation, Inc., 53 Temple Place Ste 330,
8 * Boston MA 02111-1307, USA; either version 2 of the License, or
9 * (at your option) any later version; incorporated herein by reference.
11 * ----------------------------------------------------------------------- */
13 #ifndef SYSLINUX_H
14 #define SYSLINUX_H
16 #include <inttypes.h>
17 #include "advconst.h"
19 /* The standard boot sector and ldlinux image */
20 extern unsigned char syslinux_bootsect[];
21 extern unsigned int syslinux_bootsect_len;
22 extern int syslinux_bootsect_mtime;
24 extern unsigned char syslinux_ldlinux[];
25 extern unsigned int syslinux_ldlinux_len;
26 extern int syslinux_ldlinux_mtime;
28 extern unsigned char syslinux_mbr[];
29 extern unsigned int syslinux_mbr_len;
30 extern int syslinux_mbr_mtime;
32 /* This takes a boot sector and merges in the syslinux fields */
33 void syslinux_make_bootsect(void *);
35 /* Check to see that what we got was indeed an MS-DOS boot sector/superblock */
36 const char *syslinux_check_bootsect(const void *bs);
38 /* This patches the boot sector and ldlinux.sys based on a sector map */
39 int syslinux_patch(const uint32_t *sectors, int nsectors,
40 int stupid, int raid_mode);
42 /* ADV information */
43 #define ADV_SIZE 512 /* Total size */
44 #define ADV_LEN (ADV_SIZE-3*4) /* Usable data size */
45 extern unsigned char syslinux_adv[2*ADV_SIZE];
47 int syslinux_setadv(int tag, size_t size, const void *data);
48 void syslinux_reset_adv(unsigned char *advbuf);
49 int syslinux_validate_adv(unsigned char *advbuf);
51 #endif