示例#1
0
// Export:
void AboutOpera::generateData( URL& url )
{
	writePreamble( url ); // <html><body> surplus
	// <require> each of these should close exactly the HTML tags it opens:
	writeVersion( url );
	writeUA( url );
	writeRegInfo( url );
	writePaths( url );
	writeSound( url );
	writeCredits( url );
	// </require>
	url.WriteDocumentData(UNI_L("\n\n <address>"));
#ifdef GEIR_MEMORIAL
	OP_STATUS rc;
	OpString span;
	TRAP(rc, g_languageManager->GetStringL(Str::S_DEDICATED_TO, span));
	if (OpStatus::IsSuccess(rc))
	{
		url.WriteDocumentData(UNI_L("<span>"));
		// In memory of Geir Ivars&oslash;y.
		url.WriteDocumentData(span);
		url.WriteDocumentData(UNI_L("</span> "));
	}
#endif
	outASCII(url, "Copyright &copy; 1995-");
	outASCII(url, __DATE__ + 7); // "Mmm dd Year" + 7 == "Year"
	outASCII(url, " Opera Software ASA.\n"
			 "All rights reserved.</address>\n"
			 "</body>\n</html>\n");
	url.WriteDocumentDataFinished();
}
//Recebe o SET e responde UA
void estabelecimento(int fd, unsigned char* buffer)
{
	int res;
	int isValid = FALSE, next = FALSE, canProceed = FALSE;
	while(canProceed != TRUE || next!=TRUE)
	{
		res = llread(fd,buffer);
		isValid = checkSET(buffer);
		if(isValid==TRUE)
		{
			printf("Comando recebido (SET)\n");
			canProceed=TRUE;
			writeUA(fd);
		}
		else
		{
			next = checkFirstI(buffer);
		}
	}
}