Группа :: Работа с файлами
Пакет: gnupg
Главная Изменения Спек Патчи Загрузить Bugs and FR
Патч: gnupg-1.4.1-alt-cp1251.patch
diff -uprk.orig gnupg-1.4.1.orig/doc/gpg.1 gnupg-1.4.1/doc/gpg.1
--- gnupg-1.4.1.orig/doc/gpg.1 2005-03-07 21:26:19 +0300
+++ gnupg-1.4.1/doc/gpg.1 2005-03-17 17:27:19 +0300
@@ -891,6 +891,8 @@ This is currently an alias for
the Latin 1 set.
.IP "koi8-r" 10
The usual Russian set (rfc1489).
+.IP "cp1251" 10
+The cp1251 aka windows-1251 Cyrillic set.
.IP "utf-8" 10
Bypass all translations and assume
that the OS uses native UTF-8 encoding.
diff -uprk.orig gnupg-1.4.1.orig/doc/gpg.texi gnupg-1.4.1/doc/gpg.texi
--- gnupg-1.4.1.orig/doc/gpg.texi 2005-03-17 16:16:23 +0300
+++ gnupg-1.4.1/doc/gpg.texi 2005-03-17 17:27:19 +0300
@@ -1095,6 +1095,9 @@ the Latin 1 set.
@item koi8-r
The usual Russian set (rfc1489).
+@item cp1251
+The cp1251 aka windows-1251 Cyrillic set.
+
@item utf-8
Bypass all translations and assume
that the OS uses native UTF-8 encoding.
diff -uprk.orig gnupg-1.4.1.orig/util/strgutil.c gnupg-1.4.1/util/strgutil.c
--- gnupg-1.4.1.orig/util/strgutil.c 2005-01-20 14:42:02 +0300
+++ gnupg-1.4.1/util/strgutil.c 2005-03-17 17:28:04 +0300
@@ -70,6 +70,25 @@ static ushort koi8_unicode[128] = {
0x042c,0x042b,0x0417,0x0428,0x042d,0x0429,0x0427,0x042a
};
+static ushort cp1251_unicode[128] = {
+ 0x0402,0x0403,0x201a,0x0453,0x201e,0x2026,0x2020,0x2021,
+ 0x20ac,0x2030,0x0409,0x2039,0x040a,0x040c,0x040b,0x040f,
+ 0x0452,0x2018,0x2019,0x201c,0x201d,0x2022,0x2013,0x2014,
+ 0xffff,0x2122,0x0459,0x203a,0x045a,0x045c,0x045b,0x045f,
+ 0x00a0,0x040e,0x045e,0x0408,0x00a4,0x0490,0x00a6,0x00a7,
+ 0x0401,0x00a9,0x0404,0x00ab,0x00ac,0x00ad,0x00ae,0x0407,
+ 0x00b0,0x00b1,0x0406,0x0456,0x0491,0x00b5,0x00b6,0x00b7,
+ 0x0451,0x2116,0x0454,0x00bb,0x0458,0x0405,0x0455,0x0457,
+ 0x0410,0x0411,0x0412,0x0413,0x0414,0x0415,0x0416,0x0417,
+ 0x0418,0x0419,0x041a,0x041b,0x041c,0x041d,0x041e,0x041f,
+ 0x0420,0x0421,0x0422,0x0423,0x0424,0x0425,0x0426,0x0427,
+ 0x0428,0x0429,0x042a,0x042b,0x042c,0x042d,0x042e,0x042f,
+ 0x0430,0x0431,0x0432,0x0433,0x0434,0x0435,0x0436,0x0437,
+ 0x0438,0x0439,0x043a,0x043b,0x043c,0x043d,0x043e,0x043f,
+ 0x0440,0x0441,0x0442,0x0443,0x0444,0x0445,0x0446,0x0447,
+ 0x0448,0x0449,0x044a,0x044b,0x044c,0x044d,0x044e,0x044f
+};
+
static ushort latin2_unicode[128] = {
0x0080,0x0081,0x0082,0x0083,0x0084,0x0085,0x0086,0x0087,
0x0088,0x0089,0x008A,0x008B,0x008C,0x008D,0x008E,0x008F,
@@ -649,6 +668,13 @@ set_native_charset( const char *newset )
active_charset = koi8_unicode;
use_iconv = 0;
}
+ else if( !ascii_strcasecmp( newset, "cp1251" )
+ || !ascii_strcasecmp (newset, "windows-1251" ) ) {
+ active_charset_name = "cp1251";
+ no_translation = 0;
+ active_charset = cp1251_unicode;
+ use_iconv = 0;
+ }
else
return G10ERR_GENERAL;
#endif /*!USE_GNUPG_ICONV*/