Esempio n. 1
0
static void DumpData(FILE *trace, const char *name, char *data, u32 dataLength, u32 indent, Bool XMTDump)
{
	u32 i;
	Bool ASCII_Dump;
	if (!name && !data) return;

	if (name) StartAttribute(trace, name, indent, XMTDump);
	if (!XMTDump) fprintf(trace, "\"");

	ASCII_Dump = GF_TRUE;
	for (i=0; i<dataLength; i++) {
		if ((data[i]<32) || (data[i]>126)) {
			ASCII_Dump = GF_FALSE;
			break;
		}
	}
	if (!ASCII_Dump && XMTDump) fprintf(trace, "data:application/octet-string,");
	for (i=0; i<dataLength; i++) {
		if (ASCII_Dump) {
			fprintf(trace, "%c", (unsigned char) data[i]);
		} else {
			fprintf(trace, "%%");
			fprintf(trace, "%02X", (unsigned char) data[i]);
		}
	}
	if (!XMTDump) fprintf(trace, "\"");
	if (name) EndAttribute(trace, indent, XMTDump);
}
Esempio n. 2
0
GF_Err gf_ipmpx_dump_RemoveToolNotificationListener(GF_IPMPX_Data *_p, FILE *trace, u32 indent, Bool XMTDump)
{
	u32 i;
	GF_IPMPX_RemoveToolNotificationListener*p = (GF_IPMPX_RemoveToolNotificationListener*)_p;
	StartElement(trace, "IPMP_RemoveToolNotificationListener", indent, XMTDump);
	indent++;
	StartAttribute(trace, "eventType", indent, XMTDump);
	if (!XMTDump) fprintf(trace, "\"");
	for (i=0; i<p->eventTypeCount; i++) {
		if (XMTDump) {
			fprintf(trace, "\'%d\'", p->eventType[i]);
			if (i+1<p->eventTypeCount) fprintf(trace, " ");
		} else {
			fprintf(trace, "%d", p->eventType[i]);
			if (i+1<p->eventTypeCount) fprintf(trace, ",");
		}
	}
	if (!XMTDump) fprintf(trace, "\"");
	EndAttribute(trace, indent, XMTDump);
	EndAttributes(trace, XMTDump, GF_TRUE);
	gf_ipmpx_dump_BaseData(_p, trace, indent, XMTDump);
	indent--;
	EndElement(trace, "IPMP_RemoveToolNotificationListener", indent, XMTDump);
	return GF_OK;
}
Esempio n. 3
0
static void DumpLargeInt(FILE *trace, char *attName, u64  val, u32 indent, Bool XMTDump)
{
	if (!val) return;
	StartAttribute(trace, attName, indent, XMTDump);
	fprintf(trace, LLU, val);
	EndAttribute(trace, indent, XMTDump);
}
Esempio n. 4
0
static void DumpBool(FILE *trace, char *attName, u32  val, u32 indent, Bool XMTDump)
{
	if (!val) return;

	StartAttribute(trace, attName, indent, XMTDump);
	fprintf(trace, "%s", val ? "true" : "false");
	EndAttribute(trace, indent, XMTDump);
}
Esempio n. 5
0
static void DumpDate(FILE *trace, char *name, char *data, u32 indent, Bool XMTDump)
{
	u32 i;
	if (!name ||!data) return;
	StartAttribute(trace, name, indent, XMTDump);
	fprintf(trace, "0x");
	for (i=0; i<5; i++) fprintf(trace, "%02X", (unsigned char) data[i]);
	EndAttribute(trace, indent, XMTDump);
}
Esempio n. 6
0
static void DumpBin128(FILE *trace, char *name, char *data, u32 indent, Bool XMTDump)
{
	u32 i;
	if (!name ||!data) return;
	StartAttribute(trace, name, indent, XMTDump);
	fprintf(trace, "0x");
	i=0;
	while (!data[i] && (i<16)) i++;
	if (i==16) {
		fprintf(trace, "00");
	} else {
		for (; i<16; i++) fprintf(trace, "%02X", (unsigned char) data[i]);
	}
	EndAttribute(trace, indent, XMTDump);
}
Esempio n. 7
0
static void DumpData_16(FILE *trace, char *name, u16 *data, u16 dataLength, u32 indent, Bool XMTDump)
{
	u32 i;
	if (!name && !data) return;
	if (name) StartAttribute(trace, name, indent, XMTDump);
	if (!XMTDump) fprintf(trace, "\"");
	for (i=0; i<dataLength; i++) {
		if (XMTDump) {
			fprintf(trace, "\'%d\'", data[i]);
			if (i+1<dataLength) fprintf(trace, " ");
		} else {
			fprintf(trace, "%d", data[i]);
			if (i+1<dataLength) fprintf(trace, ", ");
		}
	}
	if (!XMTDump) fprintf(trace, "\"");
	if (name) EndAttribute(trace, indent, XMTDump);
}
Esempio n. 8
0
GF_Err gf_ipmpx_dump_ConnectTool(GF_IPMPX_Data *_p, FILE *trace, u32 indent, Bool XMTDump)
{
	GF_IPMPX_ConnectTool*p = (GF_IPMPX_ConnectTool*)_p;
	StartElement(trace, "IPMP_ConnectTool", indent, XMTDump);
	indent++;
	EndAttributes(trace, XMTDump, GF_TRUE);
	gf_ipmpx_dump_BaseData(_p, trace, indent, XMTDump);
	if (!XMTDump) StartAttribute(trace, "toolDescriptor", indent, GF_FALSE);
	else {
		StartElement(trace, "toolDescriptor", indent, XMTDump);
		EndAttributes(trace, XMTDump, GF_TRUE);
	}
	gf_odf_dump_desc((GF_Descriptor *)p->toolDescriptor, trace, indent, XMTDump);
	if (XMTDump) EndElement(trace, "toolDescriptor", indent, XMTDump);

	indent--;
	EndElement(trace, "IPMP_ConnectTool", indent, XMTDump);
	return GF_OK;
}
Esempio n. 9
0
GF_Err gf_ipmpx_dump_ToolParamCapabilitiesQuery(GF_IPMPX_Data *_p, FILE *trace, u32 indent, Bool XMTDump)
{
	GF_IPMPX_ToolParamCapabilitiesQuery*p = (GF_IPMPX_ToolParamCapabilitiesQuery*)_p;
	StartElement(trace, "IPMP_ToolParamCapabilitiesQuery", indent, XMTDump);
	indent++;
	EndAttributes(trace, XMTDump, GF_TRUE);
	gf_ipmpx_dump_BaseData(_p, trace, indent, XMTDump);
	if (!XMTDump) StartAttribute(trace, "description", indent, GF_FALSE);
	else {
		StartElement(trace, "description", indent, XMTDump);
		EndAttributes(trace, XMTDump, GF_TRUE);
	}
	gf_ipmpx_dump_data((GF_IPMPX_Data *) p->description, trace, indent, XMTDump);
	if (XMTDump) EndElement(trace, "description", indent, XMTDump);

	indent--;
	EndElement(trace, "IPMP_ToolParamCapabilitiesQuery", indent, XMTDump);
	return GF_OK;
}
Esempio n. 10
0
GF_Err gf_ipmpx_dump_MutualAuthentication(GF_IPMPX_Data *_p, FILE *trace, u32 indent, Bool XMTDump)
{
	u32 i, count;
	GF_IPMPX_MutualAuthentication *p = (GF_IPMPX_MutualAuthentication*)_p;
	StartElement(trace, "IPMP_MutualAuthentication", indent, XMTDump);
	indent++;
	DumpBool(trace, "failedNegotiation", p->failedNegotiation, indent, XMTDump);
	if (gf_list_count(p->certificates)) DumpInt(trace, "certType", p->certType, indent, XMTDump);

	EndAttributes(trace, XMTDump, GF_TRUE);
	gf_ipmpx_dump_BaseData(_p, trace, indent, XMTDump);

	StartList(trace, "candidateAlgorithms", indent, XMTDump);
	count = gf_list_count(p->candidateAlgorithms);
	indent++;
	for (i=0; i<count; i++) {
		GF_IPMPX_Authentication *ip_auth = (GF_IPMPX_Authentication *)gf_list_get(p->candidateAlgorithms, i);
		gf_ipmpx_dump_AUTH(ip_auth, trace, indent, XMTDump);
	}
	indent--;
	EndList(trace, "candidateAlgorithms", indent, XMTDump);

	StartList(trace, "agreedAlgorithms", indent, XMTDump);
	count = gf_list_count(p->agreedAlgorithms);
	indent++;
	for (i=0; i<count; i++) {
		GF_IPMPX_Authentication *ip_auth = (GF_IPMPX_Authentication *)gf_list_get(p->agreedAlgorithms, i);
		gf_ipmpx_dump_AUTH(ip_auth, trace, indent, XMTDump);
	}
	indent--;
	EndList(trace, "agreedAlgorithms", indent, XMTDump);

	if (p->AuthenticationData) gf_ipmpx_dump_ByteArray(p->AuthenticationData, "AuthenticationData", trace, indent, XMTDump);

	count = gf_list_count(p->certificates);
	if (count || p->opaque || p->publicKey) {
		/*type 1*/
		if (count) {
			StartList(trace, "certificates", indent, XMTDump);
			for (i=0; i<count; i++) {
				GF_IPMPX_ByteArray *ipd = (GF_IPMPX_ByteArray *)gf_list_get(p->certificates, i);
				if (XMTDump) {
					gf_ipmpx_dump_ByteArray(ipd, NULL, trace, indent, XMTDump);
				} else {
					StartAttribute(trace, "", indent, GF_FALSE);
					DumpData(trace, NULL, ipd->data, ipd->length, indent, GF_FALSE);
					if (i+1<count) fprintf(trace, ",");
					fprintf(trace, "\n");
				}
			}
			EndList(trace, "certificates", indent, XMTDump);
		}
		/*type 2*/
		else if (p->publicKey) {
			gf_ipmpx_dump_AUTH((GF_IPMPX_Authentication *) p->publicKey, trace, indent, XMTDump);
		}
		/*type 0xFE*/
		else if (p->opaque) {
			gf_ipmpx_dump_ByteArray(p->opaque, "opaque", trace, indent, XMTDump);
		}
		if (!XMTDump) StartAttribute(trace, "trustData", indent, GF_FALSE);
		else {
			StartElement(trace, "trustData", indent, XMTDump);
			EndAttributes(trace, XMTDump, GF_TRUE);
		}
		gf_ipmpx_dump_data((GF_IPMPX_Data *)p->trustData, trace, indent, XMTDump);
		if (XMTDump) EndElement(trace, "trustData", indent, XMTDump);
		gf_ipmpx_dump_ByteArray(p->authCodes, "authCodes", trace, indent, XMTDump);
	}

	indent--;
	EndElement(trace, "IPMP_MutualAuthentication", indent, XMTDump);
	return GF_OK;
}
Esempio n. 11
0
void SkinManager::ExtractSkinInfo(skinitem* Skin)
{
	if (Skin->isCompressed)
	{
		// Check to see if Data Path exists
		string datapath = SETTINGS::getInstance().getDataPath() + "Skins\\";
		HRESULT hr;
		if (!FileExists(datapath)){
			DebugMsg("SkinManager", "Creating %s folder", datapath.c_str());
			_mkdir(datapath.c_str());
		}
		// Check to see if xmlpath exists "skins\\default.xzp\\"
		if (!FileExists(Skin->xmlpath)){
			DebugMsg("SkinManager", "Creating %s folder", Skin->xmlpath.c_str());
			_mkdir(Skin->xmlpath.c_str());
		}
		// Check to see if Settings folder exists
		string tempcfg = Skin->xmlpath + "Settings\\";
		if(!FileExists(tempcfg)){
		DebugMsg("SkinManager", "Creating %s folder", tempcfg.c_str());
		_mkdir(tempcfg.c_str());
		}

		// Check to see if Menu Settings Exists, if not, extract it
		string strbuff = Skin->xmlpath + "Settings\\MenuSettings.xml";
		if (!FileExists(Skin->xmlpath + "Settings\\MenuSettings.xml"))
		{
			DebugMsg("SkinManager", "File %s doesn't exist. Extracting", strbuff.c_str());
			hr = XZPManager::getInstance().ExtractXML(Skin->SkinPath, Skin->SkinFileName, "Settings\\MenuSettings.xml");
			if (hr == S_OK)
			{
				DebugMsg("SkinManager", "Extracted %s Successfully", strbuff.c_str());
			} else {
				DebugMsg("SkinManager", "Failed to extract %s", strbuff.c_str());
			}
		}

		// Check to see if SkinSettings Exists, if not, extract it
		strbuff = Skin->xmlpath + "Settings\\SkinSettings.xml";
		if (!FileExists(Skin->xmlpath + "Settings\\SkinSettings.xml"))
		{
			DebugMsg("SkinManager", "File %s doesn't exist. Extracting", strbuff.c_str());
			hr = XZPManager::getInstance().ExtractXML(Skin->SkinPath, Skin->SkinFileName, "Settings\\SkinSettings.xml");
			if (hr == S_OK)
			{
				DebugMsg("SkinManager", "Extracted %s Successfully", strbuff.c_str());
			} else {
				DebugMsg("SkinManager", "Failed to extract %s", strbuff.c_str());
			}
		}

		// Check to verify that XML Folder Exists
		string tempxml = Skin->xmlpath + "XML\\";
		if (!FileExists(tempxml))
		{
			DebugMsg("SkinManager", "Creating %s folder", tempxml.c_str());
			_mkdir(tempxml.c_str());
		}

		// Look for BkgListA and extract that
		strbuff = Skin->xmlpath + "XML\\BkgListA.xml";
		if (!FileExists(Skin->xmlpath + "XML\\BkgListA.xml")){
			DebugMsg("SkinManager", "File %s doesn't exist. Extracting", strbuff.c_str());
			hr = XZPManager::getInstance().ExtractXML(Skin->SkinPath, Skin->SkinFileName, "XML\\BkgListA.xml");
			if (hr == S_OK)
			{
				DebugMsg("SkinManager", "Extracted %s Successfully", strbuff.c_str());
			} else {
				DebugMsg("SkinManager", "Failed to extract %s", strbuff.c_str());
			}
		}
		// Look for BkgListB and extract that
		strbuff = Skin->xmlpath + "XML\\BkgListB.xml";
		if (!FileExists(Skin->xmlpath + "XML\\BkgListB.xml")){
			DebugMsg("SkinManager", "File %s doesn't exist. Extracting", strbuff.c_str());
			hr = XZPManager::getInstance().ExtractXML(Skin->SkinPath, Skin->SkinFileName, "XML\\BkgListB.xml");
			if (hr == S_OK)
			{
				DebugMsg("SkinManager", "Extracted %s Successfully", strbuff.c_str());
			} else {
				DebugMsg("SkinManager", "Failed to extract %s", strbuff.c_str());
			}
		}
			// Look for VisualList and extract that
		strbuff = Skin->xmlpath + "XML\\VisualList.xml";
		if (!FileExists(Skin->xmlpath + "XML\\VisualList.xml")){
			DebugMsg("SkinManager", "File %s doesn't exist. Extracting", strbuff.c_str());
			hr = XZPManager::getInstance().ExtractXML(Skin->SkinPath, Skin->SkinFileName, "XML\\VisualList.xml");
			if (hr == S_OK)
			{
				DebugMsg("SkinManager", "Extracted %s Successfully", strbuff.c_str());
			} else {
				DebugMsg("SkinManager", "Failed to extract %s", strbuff.c_str());
			}
		}
		XMLReader * xml = LoadConfigFile(strbuff);
		// Extract the visual files as well
		DebugMsg("SkinManager","Extracting Visual XML files");
		while (xml && xml->read())
		{
			if(StartAttribute(xml, "visual"))
			{
				DebugMsg("SkinManager", "Reading VisualList.xml");
				strbuff = xml->getAttributeValue("path");
				DebugMsg("SkinManager", "Path: %s", strbuff.c_str());
				tempxml = Skin->xmlpath + strbuff;
				DebugMsg("SkinManager", "TempPath: %s", tempxml.c_str());
				if (!FileExists(tempxml)){
					DebugMsg("SkinManager", "File %s doesn't exist. Extracting", strbuff.c_str());
					hr = XZPManager::getInstance().ExtractXML(Skin->SkinPath, Skin->SkinFileName, strbuff);
					if (hr == S_OK)
					{
						DebugMsg("SkinManager", "Extracted %s Successfully", strbuff.c_str());
					} else {
						DebugMsg("SkinManager", "Failed to extract %s", strbuff.c_str());
					}
				}
			}
		}
	}
}