<?xml version="1.0" encoding="UTF-8" ?>

<bugzilla version="5.2"
          urlbase="https://bugzilla.altlinux.org/"
          
          maintainer="jenya@basealt.ru"
>

    <bug>
          <bug_id>6770</bug_id>
          
          <creation_ts>2005-05-03 14:41:28 +0400</creation_ts>
          <short_desc>Не позволяет ввод нелатинских символов для gecos в локали.UTF-8</short_desc>
          <delta_ts>2019-11-05 17:20:22 +0300</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>4</classification_id>
          <classification>Development</classification>
          <product>Sisyphus</product>
          <component>shadow-utils</component>
          <version>unstable</version>
          <rep_platform>all</rep_platform>
          <op_sys>Linux</op_sys>
          <bug_status>CLOSED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>10446</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Sergey V Turchin">zerg</reporter>
          <assigned_to name="Mikhail Efremov">sem</assigned_to>
          <cc>lav</cc>
    
    <cc>ldv</cc>
    
    <cc>sem</cc>
    
    <cc>shaba</cc>
    
    <cc>sin</cc>
          
          <qa_contact>qa-sisyphus</qa_contact>

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>24199</commentid>
    <comment_count>0</comment_count>
    <who name="Sergey V Turchin">zerg</who>
    <bug_when>2005-05-03 14:41:28 +0400</bug_when>
    <thetext>В локали ru_RU.UTF-8 
chfn -f Сергей 
говорит 
invalid name &apos;Сергей&apos;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>31798</commentid>
    <comment_count>1</comment_count>
    <who name="Vitaly Lipatov">lav</who>
    <bug_when>2005-10-13 11:39:18 +0400</bug_when>
    <thetext>Подтверждаю. Действительно именно в UTF-ной локали такое. 
Может быть поправить определение, что символ управляющий? А то он коды &gt;=0x80 
к ним относит... 
 
$ diff -urN fields.c.o fields.c 
--- fields.c.o  2005-10-13 11:37:27 +0400 
+++ libmisc/fields.c    2005-10-13 11:38:04 +0400 
@@ -37,7 +37,7 @@ 
 #include &quot;prototypes.h&quot; 
 
 #define fixed_iscntrl(c) \ 
-       (((c) &amp; 0x7f) &lt; 0x20 || (c) == 0x7f) 
+       ((c) &lt; 0x20 || (c) == 0x7f) 
 
 #define MAX_FIELD_SIZE                 0x80 
 
 </thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>31800</commentid>
    <comment_count>2</comment_count>
    <who name="Vitaly Lipatov">lav</who>
    <bug_when>2005-10-13 11:56:27 +0400</bug_when>
    <thetext>char оказался знаковым, так что вот так: 
$diff -urN fields.c.o fields.c 
--- fields.c.o  2005-10-13 11:37:27 +0400 
+++ libmisc/fields.c    2005-10-13 11:56:54 +0400 
@@ -37,7 +37,7 @@ 
 #include &quot;prototypes.h&quot; 
 
 #define fixed_iscntrl(c) \ 
-       (((c) &amp; 0x7f) &lt; 0x20 || (c) == 0x7f) 
+       (((unsigned)(c)) &lt; 0x20 || (c) == 0x7f) 
 
 #define MAX_FIELD_SIZE                 0x80 </thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>61268</commentid>
    <comment_count>3</comment_count>
    <who name="Vitaly Lipatov">lav</who>
    <bug_when>2008-01-17 09:37:53 +0300</bug_when>
    <thetext>Дима, а это нормально, что меньше чем через 4 месяца мы отметим 3 года этой 
баги?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>61504</commentid>
    <comment_count>4</comment_count>
    <who name="Dmitry V. Levin">ldv</who>
    <bug_when>2008-01-20 00:19:16 +0300</bug_when>
    <thetext>(In reply to comment #3)
&gt; Дима, а это нормально, что меньше чем через 4 месяца мы отметим 3 года этой 
&gt; баги?

Попробуй вывести на неюникодную консоль символы из диапазона 0x80..0xa0,
и тогда станет понятно, что проблема не одномерна.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>61575</commentid>
    <comment_count>5</comment_count>
    <who name="Vitaly Lipatov">lav</who>
    <bug_when>2008-01-20 02:57:41 +0300</bug_when>
    <thetext>Мне кажется это проблема консоли, а в программах не должно быть таких 
американских хаков, как-либо изменяющих поток данных.
И может быть когда-нибудь мы доживём-таки до юникодной консоли :)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>184964</commentid>
    <comment_count>6</comment_count>
    <who name="Alexey Shabalin">shaba</who>
    <bug_when>2019-10-17 20:53:44 +0300</bug_when>
    <thetext>chfn -f &quot;Алексей Шабалин&quot;
chfn: имя «Алексей Шабалин» содержит не ASCII-символы

Может уже пришло время юникодных консолей?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>184972</commentid>
    <comment_count>7</comment_count>
    <who name="Sergey V Turchin">zerg</who>
    <bug_when>2019-10-18 09:55:39 +0300</bug_when>
    <thetext>(В ответ на комментарий №4)
&gt; Попробуй вывести на неюникодную консоль символы из диапазона 0x80..0xa0,
В неадекватном неюникодной консоли отображении текста на экране я проблем не вижу.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>185321</commentid>
    <comment_count>8</comment_count>
    <who name="Mikhail Efremov">sem</who>
    <bug_when>2019-11-05 17:10:45 +0300</bug_when>
    <thetext>В shadow-utils-4.5 юникодный gecos не запрещается, хоть и выводится предупреждение:
# chfn -f &apos;Сергей&apos; foobar 
chfn: имя «Сергей» содержит не ASCII-символы
# grep foobar /etc/passwd
foobar:x:502:502:Сергей,,,:/home/foobar:/bin/bash</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>185322</commentid>
    <comment_count>9</comment_count>
    <who name="Sergey V Turchin">zerg</who>
    <bug_when>2019-11-05 17:20:22 +0300</bug_when>
    <thetext>Работает.</thetext>
  </long_desc>
      
      

    </bug>

</bugzilla>