to post messages and comments.

если верить http://xmpp.org/extensions/xep-0027.html, то "All program output is US-ASCII armored output with the headers removed. ", думаю, а как же тогда декриптовать? Выше реализовал через отрезание лишнего, base64 декодирование и скармливание в сыром виде. Работает. Стало интересно, как бы сделать красиво, посмотрел код Pidgin-GPG
static char* str_armor(const char* unarmored)
{
	char* header = "-----BEGIN PGP SIGNATURE-----\n\n";
	char* footer = "\n-----END PGP SIGNATURE-----";

	char* buffer = malloc(strlen(header)+strlen(footer)+strlen(unarmored)+1);
	strcpy(buffer, header);
	strcat(buffer, unarmored);
	strcat(buffer, footer);
	return buffer;
}

///_\\\

Как-то лазил по xmpp.org и подумалось, а почему же даты (взять хотя бы даты рождения в вкард) рекомендуют писать, как гггг-мм-дд цифрами? А всё просто- на этой основе можно легко запилить парсер даты и если в вкард дата рождения указана согласно этой форме, то можно легко сделать, чтоб при запросе вкард под полем "Д.р" появлялось, например, поле "Возраст", в котором эта цифра высчитывается арифметическим путём и не надо заниматься вычитанием в уме. Можно конечно парсить 100500 вариантов типа "1 Jan 1900, 1900/01/01, 1 January '80" и т.д., но это уже не Ъ.