Пример #1
0
int main()
{
	//
	// WARNING: Should use NSCreateObjectFileImageFromFile instead
	// http://developer.apple.com/mac/library/technotes/tn2002/tn2071.html#Section6
	//
	void *pythonLib = dlopen(PYTHONLIB_PATH, RTLD_NOW);
	if (!pythonLib) {
		char *error = dlerror();
		fprintf(stderr, "dlopen() failed: %s\n", error);
		return 1;
	}
	
	python_functions_t python = {0};
#define LOAD_SYMBOL( symname ) if (!(python.symname = dlsym( pythonLib, #symname ))) { return -1; }
	LOAD_SYMBOL( Py_Initialize );
	LOAD_SYMBOL( Py_Finalize );
	LOAD_SYMBOL( PySys_SetArgv );
	LOAD_SYMBOL( PySys_SetPath );
	LOAD_SYMBOL( PyRun_SimpleStringFlags );
	
	python.Py_Initialize();
	python.PySys_SetArgv(SIZEOF_STATIC_ARRAY(pythonArgv), pythonArgv);
	python.PyRun_SimpleStringFlags(pythonScript, NULL);
	python.Py_Finalize();
	
	dlclose(pythonLib);
	
	return 0;
}
Пример #2
0
int main()
{
	Py_Initialize();
	PySys_SetArgv(SIZEOF_STATIC_ARRAY(pythonArgv), pythonArgv);
	PyRun_SimpleStringFlags(pythonScript, NULL);
	Py_Finalize();
	return 0;
}
Пример #3
0
		{	MSG_CRYPTOSAUR_REQUEST_LOGIN,				&CCryptosaurEngine::MsgRequestLogin },

		//	Cryptosaur.resetPasswordManual {username}
		{	MSG_CRYPTOSAUR_RESET_PASSWORD_MANUAL,		&CCryptosaurEngine::MsgResetPasswordManual },

		//	Cryptosaur.setCertificate {type} {data}
		{	MSG_CRYPTOSAUR_SET_CERTIFICATE,				&CCryptosaurEngine::MsgSetCertificate },

		//	Cryptosaur.signData {keyName} {data}
		{	MSG_CRYPTOSAUR_SIGN_DATA,					&CCryptosaurEngine::MsgSignData },

		//	Cryptosaur.validateAuthToken {authToken}
		{	MSG_CRYPTOSAUR_VALIDATE_AUTH_TOKEN,			&CCryptosaurEngine::MsgValidateAuthToken },
	};

int CCryptosaurEngine::m_iMsgHandlerListCount = SIZEOF_STATIC_ARRAY(CCryptosaurEngine::m_MsgHandlerList);

CCryptosaurEngine::CCryptosaurEngine (void) : TSimpleEngine(ENGINE_NAME_CRYPTOSAUR),
		m_bAeonInitialized(false),
		m_bAdminExists(false)

//	CCryptosaurEngine constructor

	{
	}

CCryptosaurEngine::~CCryptosaurEngine (void)

//	CCryptosaurEngine destructor

	{
Пример #4
0
		{	EXTENSION_DOCX,			MEDIA_TYPE_MSWORD,		},
		{	EXTENSION_EXE,			MEDIA_TYPE_BINARY,		},
		{	EXTENSION_HTM,			MEDIA_TYPE_HTML,		},
		{	EXTENSION_HTML,			MEDIA_TYPE_HTML,		},
		{	EXTENSION_JPE,			MEDIA_TYPE_JPG,			},
		{	EXTENSION_JPEG,			MEDIA_TYPE_JPG,			},
		{	EXTENSION_JPG,			MEDIA_TYPE_JPG,			},
		{	EXTENSION_JS,			MEDIA_TYPE_JAVASCRIPT,	},
		{	EXTENSION_LHA,			MEDIA_TYPE_BINARY,		},
		{	EXTENSION_LZH,			MEDIA_TYPE_BINARY,		},
		{	EXTENSION_OTF,			MEDIA_TYPE_OTF,			},
		{	EXTENSION_PNG,			MEDIA_TYPE_PNG,			},
		{	EXTENSION_ZIP,			MEDIA_TYPE_ZIP,			},
	};

int g_MediaTypeMapCount = SIZEOF_STATIC_ARRAY(g_MediaTypeMap);

struct SMediaTypeData
	{
	const CString &sMediaType;
	EContentEncodingTypes iDefaultEncoding;
	};

SMediaTypeData g_MediaTypeData[] =
	{
		{	MEDIA_TYPE_BINARY,			http_encodingIdentity },
		{	MEDIA_TYPE_CSS,				http_encodingGzip },
		{	MEDIA_TYPE_HTML,			http_encodingGzip },
		{	MEDIA_TYPE_JAVASCRIPT,		http_encodingGzip },
		{	MEDIA_TYPE_JPG,				http_encodingIdentity },
		{	MEDIA_TYPE_JSON,			http_encodingGzip },
Пример #5
0
		{	MSG_AEON_WAIT_FOR_VOLUME,			&CAeonEngine::MsgWaitForVolume },

		//	Arc.housekeeping
		{	MSG_ARC_HOUSEKEEPING,				&CAeonEngine::MsgHousekeeping },

		//	Exarch.onMachineStart
		{	MSG_EXARCH_ON_MACHINE_START,		&CAeonEngine::MsgOnMachineStart },

		//	Mnemosynth.onModified
		{	MSG_MNEMOSYNTH_ON_MODIFIED,			&CAeonEngine::MsgOnMnemosynthModified },

		//	Transpace.download {address} {originalAddress} [{fileDownload}]
		{	MSG_TRANSPACE_DOWNLOAD,				&CAeonEngine::MsgTranspaceDownload },
	};

int CAeonEngine::m_iMsgHandlerListCount = SIZEOF_STATIC_ARRAY(CAeonEngine::m_MsgHandlerList);

CAeonEngine::CAeonEngine (void) : TSimpleEngine(ENGINE_NAME_AEON, 3)

//	CAeonEngine constructor

	{
	}

CAeonEngine::~CAeonEngine (void)

//	CAeonEngine destructor

	{
	int i;