summaryrefslogtreecommitdiffhomepage
path: root/dev/SIGG/Format.hxx
blob: e7d9f60b908d87b366a9d0178daa7c48c9b35bf1 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
/* -------------------------------------------

	Copyright ZKA Technologies.

------------------------------------------- */

#pragma once

#include <NewKit/Defines.hxx>
#include <KernelKit/PEF.hxx>
#include <KernelKit/PE.hxx>
#include <KernelKit/MSDOS.hxx>

#define kDriverSignedExt   ".sigg"
#define kDriverExt		   ".sys"
#define kSignedDriverMagic "SIGG"

/// @brief SIGG format, takes care of signed drivers.

namespace Kernel
{
	namespace Detail
	{
		/// @brief Instablle Secure Driver record.
		struct SIGNED_DRIVER_HEADER final
		{
			// doesn't change.
			char d_binary_magic[5];
			int	 d_binary_version;
			// can change.
			char   d_binary_name[4096];
			UInt64 d_binary_checksum;
			UInt64 d_binary_size;
			char   d_binary_padding[512];
		};
	} // namespace Detail
} // namespace Kernel