GMime е набор от инструменти за разбор и създаване на съобщения, като използвате Multipurpose Internet Mail Extension (MIME).
Като разработчик и потребител на клиенти за електронна поща, бях дошъл да се разбере, че по-голямата част от клиент за електронна поща решения имали по-малко от тези със задоволително MIME реализации. По-често, отколкото не тези клиенти за електронна поща, създадени разбити MIME съобщения и / или неправилно ще се опитат да се направи разбор на MIME съобщение по този начин се извади от всички ползи, които MIME е трябвало да осигури. GMime има за цел да се справи с този проблем, като след спецификация на MIME, като същевременно осигурява програмисти с изключително лесен за използване интерфейс за приложно програмиране
Какво ново в тази версия:.
- Тази версия определя система за локал набор от знаци за откриване и сега се справя грешки ERANGE от изброяване (), която Win32 версия на libiconv GNU изглежда определен (но не е документирано).
Какво ново във версия 2.2.27:
- configure.in: ударих версия на 02.02.27
- gmime / gmime-GPG-context.c (gpg_ctx_parse_status):. Отнасяйте EXPSIG, EXPKEYSIG и REVKEYSIG същите като GOODSIG / BADSIG съобщения за състоянието на всички от тях означават нова информация подписващия
- gmime / gmime поток-mem.c (stream_write): Правилно се изчисли крайната граница на потока, когато bound_end е -1 .
- gmime / gmime-utils.h (GMIME_QP_ENCODE_LEN):. Fixed да се вземе отчитат и възможността да се налага да принуди намотка линии при 72 + герои
- (GMIME_UUENCODE_LEN): Фиксиран за да предотврати евентуални препълване на буфера .
Какво ново във версия 2.4.22:
- README: ударих версия
- configure.in: ударих версия на 02.04.22
- изграждане / vs2008 / gmime.vcproj:. Ударих версия
- gmime / gmime поток-mem.c (stream_write): Правилно се изчисли крайната граница на потока, когато bound_end е -1 .
Какво ново във версия 2.5.4:
- gmime / интернет-address.c (decode_address) : Handle ръба случаи
- където inptr достигне края на входния низ преждевременно поради
- неправилен адрес.
- мим / gmime-pkcs7-context.c (pkcs7_get_validity): преработих
- логика да се изчисли състоянието на подписващия. Също спадна
- GMimeSignatureStatus логика.
- gmime / gmime-GPG-context.c (gpg_verify): Премахнато (счупен)
- логика на изчисляване на GMimeSignatureStatus.
- (gpg_decrypt):. Same
- (gpg_ctx_parse_signer_info): Updated за g_mime_signer_new ()
- промяна API.
- gmime / gmime-крипто-context.c (g_mime_signature_validity_new): Не
- вече инициализира член GMimeSignatureStatus.
- (g_mime_signature_validity_get_status):. Removed
- (g_mime_signature_validity_set_status):. Removed
- (g_mime_signer_new): Сега отнема GMimeSignerStatus, така че можех
- се отървете от състоянието по подразбиране NONE.
- gmime / gmime-крипто-context.h (GMimeSignatureStatus):. Removed
- gmime / gmime-крипто-context.c (g_mime_signer_new): Нулирайте
- pubkey_algo и hash_algo.
- (g_mime_signer_ [г, S] et_pubkey_algo):. Изпълнено
- (g_mime_signer_ [г, S] et_hash_algo):. Преименувана от [г, S] et_hash ()
- gmime / gmime-крипто-context.h (GMimeCryptoPubKeyAlgo): Определя се
- ENUM.
- gmime / gmime-pkcs7-context.c (pkcs7_get_validity): Записва
- хеш и pubkey алгоритми, използвани в GMimeSigner.
- gmime / gmime-GPG-context.c (gpg_ctx_parse_signer_info): Record
- алгоритъм pubkey използва от подписалия.
- gmime / gmime-съставно-encrypted.c (g_mime_multipart_encrypted_encrypt):
- Сега отнема аргумент хеш алгоритъм, който преминава по протежение на
- g_mime_crypto_context_encrypt ().
- gmime / gmime-GPG-context.c (gpg_ctx_get_argv): При подписване и
- криптиране, предаде Digest алгоритъм за GPG на командния ред.
- (gpg_encrypt): Задайте хеш ID на GpgCtx .
- gmime / gmime-крипто-context.c (g_mime_crypto_context_encrypt):
- Сега отнема аргумент хеш алгоритъм.
- gmime / gmime-GPG-context.c (gpg_hash_from_id): New функция
- картографиране цифровите хеш идентификатор че GPG използва за GMimeCryptoHash
- идентификатори.
- (gpg_ctx_parse_signer_info): Екстракт алгоритъм на хеш използва от
- подписалия.
- (gpg_ctx_parse_status): Updated да използвате gpg_hash_from_id () .
- gmime / gmime-крипто-context.c (g_mime_signer_set_hash): New
- функция за настройване на алгоритъм на хеш използва от подписалия.
- (g_mime_signer_get_hash): Нова функция, за да получите алгоритъм на хеш
- използва от подписалия.
- gmime / gmime-крипто-контекст [C, H]:... Преименувана от gmime-шифър-контекст [C, H]
- gmime / gmime-съставно-encrypted.c (g_mime_multipart_encrypted_decrypt):
- Актуализирани съобщения за грешки, за да бъдат по-последователни.
- gmime / gmime-съставно-signed.c (g_mime_multipart_signed_verify):
- Уверете се, да зададете грешка във всички случаи връщане NULL.
- gmime / gmime-шифър-context.c (g_mime_signer_get_ *): Това
- функции всички сега да Конст GMimeSigner *.
- gmime / gmime-GPG-context.c (GpgCtx): Вече не е с sigfile
- държавите. Вместо съдържа sigstream и passwd_fd сега е преименуван
- да secret_fd и използва както за изпращане на GPG ако съществува на потребителя, както
- както и за изпращане на GPG на електронен подпис, когато се проверява.
- (gpg_ctx_new): Updated за новите структура членовете .
- (gpg_ctx_set_sigstream):. Заменя gpg_ctx_set_sigfile ()
- (gpg_ctx_free):. Updated за новите структура членовете
- (gpg_ctx_get_argv): Промяна на нашия --verify командния ред, така че ние
- Мога PAS GPG електронния подпис, без първо да я пиша, за да
- диск. Също така променен, за да се върнете Чар ** вместо GPtrArray да
- опрости нещата.
- (gpg_ctx_op_start): Modified да се създадат повече тръби в ПРОВЕРКА
- режим.
- (gpg_ctx_op_step): Modified за стриймване на електронен подпис, за да
- GPG.
- (gpg_verify): Не пишете на електронен подпис на диск - вместо това,
- сега може да я излъчва директно на GPG.
- gmime / gmime-message.c (g_mime_message_get_body): Нова функция на
- опитате и познайте коя част (или съставно / алтернативни) представлява
- тялото на съобщението.
- gmime / кодировка-map.c: Според rfc1557, се предполага, че
- EUC-KR бъде използван за удара с глава, тъй като много корейски експедитор не могат да се справят
- base64 или цитира-печат кодирана ISO-2022-KR. Въз основа на това и
- бъг # 629235, аз съм просто ще падне ISO-2022-KR.
- gmime / gmime-utils.c (g_mime_utils_header_decode_text): В
- заобиколно случай, ако не намерим край маркер, върнете ни inptr
- към началото на най-новата дума * плюс 2 * (да прескочим
- водещата & quot; = & quot;), не в началото на текста. Също така трябва
- да изчисти нашата ASCII състояние.
- (g_mime_utils_header_decode_phrase): В случай заобиколно решение, ако
- не намери своя край маркер, върнете ни inptr до началото на
- последната дума * плюс 2 *, за да прескочим водещите & quot; = & quot;.
- gmime / gmime-encodings.c (g_mime_encoding_quoted_encode_close):
- Ако последния въведен символ не е Н, прикрепите & quot; = N & quot; последователност.
- gmime / gmime-charset.c: Mark known_iconv_charsets [], както
- статично. Също марка струнни членове на различни частни structs като
- Конст.
- configure.ac: Bump изискване нагъл версия за
- g_set_error_literal ().
- gmime / интернет-address.c (group_to_string): Да не се срине, ако
- име на групата е изключено. Благодарение на Damian Pietras за тази кръпка.
- gmime / gmime-utils.c (g_mime_utils_header_decode_phrase):
- Прилагане същото rfc2047-заобиколно рана на установения в
- g_mime_utils_header_decode_text ().
- gmime / gmime-encodings.c (g_mime_encoding_base64_decode_step):
- трябва да поддържате състояние да следите броя = лидер сме подкрепени
- над в случай, че пресича буферни граници.
- gmime / gmime-param.c (decode_token): Направете по-малко строга, за да
- справят некотирани гранични стойности, съдържащи "=" (и други незаконни
- герои).
- gmime / интернет-address.c (_internet_address_set_name): Не
- декодиране / край на цитата името. Докторите за всички функции, които изискват
- тази поеме низ име е сред декодиран форма вече.
- (_ internet_address_decode_name): New вътрешна функция, която
- декодира низ и го определя като името на InternetAddress.
- (decode_address): пренаписва, за да бъде още по-либерален в това, което
- приема.
- gmime / gmime-съставно-encrypted.c (g_mime_multipart_encrypted_decrypt):
- Не unref криптирания съдържание мим част обекта, когато
- тип съдържание не съответства на заявление / октет поток,
- g_mime_multipart_get_part () не литературен източник части той се връща. Ние също
- трябва да зададете за грешка, когато това се случи.
Какво ново във версия 2.4.21:
- gmime / интернет-address.c (decode_address) : Handle ръба случаи
- където inptr достигне края на входния низ преждевременно поради
- неправилен адрес.
- gmime / gmime-съставно-encrypted.c (g_mime_multipart_encrypted_decrypt):
- Актуализирани съобщения за грешки, за да бъдат по-последователни.
- gmime / gmime-съставно-signed.c (g_mime_multipart_signed_verify):
- Уверете се, да зададете грешка във всички случаи връщане NULL.
- gmime / gmime-шифър-context.c (g_mime_signer_get_ *): Това
- функции всички сега да Конст GMimeSigner *.
- gmime / gmime-GPG-context.c (GpgCtx): Вече не е с sigfile
- държавите. Вместо съдържа sigstream и passwd_fd сега е преименуван
- да secret_fd и използва както за изпращане на GPG ако съществува на потребителя, както
- както и за изпращане на GPG на електронен подпис, когато се проверява.
- (gpg_ctx_new): Updated за новите структура членовете .
- (gpg_ctx_set_sigstream):. Заменя gpg_ctx_set_sigfile ()
- (gpg_ctx_free):. Updated за новите структура членовете
- (gpg_ctx_get_argv): Промяна на нашия --verify командния ред, така че ние
- Мога PAS GPG електронния подпис, без първо да я пиша, за да
- диск. Също така променен, за да се върнете Чар ** вместо GPtrArray да
- опрости нещата.
- (gpg_ctx_op_start): Modified да се създадат повече тръби в ПРОВЕРКА
- режим.
- (gpg_ctx_op_step): Modified за стриймване на електронен подпис, за да
- GPG.
- (gpg_verify): Не пишете на електронен подпис на диск - вместо това,
- сега може да я излъчва директно на GPG.
Какво ново във версия 2.4.19:
- Тази версия е била определена за изграждане на по-стари версии на GLib (още през 2.12).
- Изглед Произведение Ключ бяха приложени за разбити rfc2047-кодиран имейл адреси.
- от край случай base64 декодер бъг също е фиксиран.
<силни> Изисквания :
- Глиб & GT; = 1.2.x
Коментари не е намерена