Blame arch/nt32/peldso.h

234f06
#ifndef _PELDSO_H_
234f06
#define _PELDSO_H_
234f06
234f06
/* ldso flags (pemagine)*/
234f06
#define PE_LDSO_INTEGRAL_ONLY		0x00000000
234f06
#define PE_LDSO_DEFAULT_EXECUTABLE	0x00000001
234f06
#define PE_LDSO_STANDALONE_EXECUTABLE	0x00000002
234f06
234f06
/* error status (ntapi) */
234f06
#define NT_STATUS_NOINTERFACE		0xC00002B9
234f06
234f06
/* rtdata guid (ntapi) */
234f06
#define NT_PROCESS_GUID_RTDATA		{0x3e43ec84,0x1af1,0x4ede,{0xac,0xd8,0xc3,0xd9,0x20,0xaf,0xc8,0x68}}
234f06
234f06
/* abi guid */
234f06
struct __guid {
234f06
	unsigned int	data1;
234f06
	unsigned short	data2;
234f06
	unsigned short	data3;
234f06
	unsigned char	data4[8];
234f06
};
234f06
234f06
/* loader interfaces, statically linked (libldso.a) */
234f06
__attribute__((__visibility__("hidden"))) int    __ldso_terminate_current_process(
234f06
	int			estatus);
234f06
234f06
__attribute__((__visibility__("hidden"))) void * __ldso_get_procedure_address(
234f06
	const void *		base,
234f06
	const char *		name);
234f06
234f06
__attribute__((__visibility__("hidden"))) int    __ldso_load_framework_loader_ex(
234f06
	void **			baseaddr,
234f06
	void **			hroot,
234f06
	void **			hdsodir,
234f06
	const struct __guid *	abi,
234f06
	const unsigned short *	basename,
234f06
	const unsigned short *	rrelname,
234f06
	void *			refaddr,
234f06
	unsigned long *		buffer,
234f06
	unsigned int		bufsize,
234f06
	unsigned int		flags,
234f06
	unsigned int *		sysflags);
234f06
234f06
__attribute__((__visibility__("hidden"))) int    __ldso_load_framework_library(
234f06
	void **			baseaddr,
234f06
	void *			hat,
234f06
	const unsigned short *	atrelname,
234f06
	unsigned long *		buffer,
234f06
	unsigned int		bufsize,
234f06
	unsigned int *		sysflags);
234f06
234f06
#endif