I'll try the tset option, but we may just end up setting a new
password on the affected VMs :)

I can appreciate @ and # being invalid for login names, but certainly
not passwords. I'm still left wondering why this is an issue sometimes
and not other times on the same machines. I'll have to play with tset
and see how the environment changes.

Thanks for all the input, James!

--Graham

On Thu, Jun 13, 2013 at 4:20 AM, James Bulpin
<james.bul...@eu.citrix.com> wrote:
> I've been playing around a bit with terminal stuff...
>
> I suspect something is leaving the terminal configured to use @ as the 'kill' 
> character. You can see this by running tset:
>
> [root@localhost ~]# tset
> Kill is @.
>
> You can change this by e.g.:
>
> [root@localhost ~]# tset  -k ^U
> Kill set to control-U (^U).
>
> Note that agetty implements kill ('@') and backspace ('#') directly (not via 
> normal terminal config) for the login name - i.e. '@'  in a username isn't 
> going to work. Hence my guess that agetty was doing something weird may be 
> invalid.
>
>> -----Original Message-----
>> From: xen-api-boun...@lists.xen.org [mailto:xen-api-boun...@lists.xen.org]
>> On Behalf Of Graham Frank
>> Sent: 11 June 2013 19:28
>> To: Xen-api@lists.xen.org
>> Subject: Re: [Xen-API] Console Login Bug?
>>
>> All of our guest Linux VMs are CentOS 5.x or 6.x x86_64. On all of
>> them I can find agetty running for the console.
>>
>> -- /sbin/agetty /dev/hvc0 38400 vt100-nav
>>
>> Here's an strace of agetty when I enter text followed by @ ---
>>
>> read(0, "r", 1)                         = 1
>> write(1, "r", 1)                        = 1
>> read(0, "o", 1)                         = 1
>> write(1, "o", 1)                        = 1
>> read(0, "o", 1)                         = 1
>> write(1, "o", 1)                        = 1
>> read(0, "t", 1)                         = 1
>> write(1, "t", 1)                        = 1
>> read(0, "@", 1)                         = 1
>> write(1, "\10 \10", 3)                  = 3
>> write(1, "\10 \10", 3)                  = 3
>> write(1, "\10 \10", 3)                  = 3
>> write(1, "\10 \10", 3)                  = 3
>> read(0, "f", 1)                         = 1
>> write(1, "f", 1)                        = 1
>> read(0, "a", 1)                         = 1
>> write(1, "a", 1)                        = 1
>> read(0, "i", 1)                         = 1
>> write(1, "i", 1)                        = 1
>> read(0, "l", 1)                         = 1
>> write(1, "l", 1)                        = 1
>> read(0,
>>
>> And here's the output from Shift+3 --
>>
>> read(0, "t", 1)                         = 1
>> write(1, "t", 1)                        = 1
>> read(0, "e", 1)                         = 1
>> write(1, "e", 1)                        = 1
>> read(0, "s", 1)                         = 1
>> write(1, "s", 1)                        = 1
>> read(0, "t", 1)                         = 1
>> write(1, "t", 1)                        = 1
>> read(0, "#", 1)                         = 1
>> write(1, "\10 \10", 3)                  = 3
>> read(0, "#", 1)                         = 1
>> write(1, "\10 \10", 3)                  = 3
>>
>> --Graham
>>
>> On Tue, Jun 11, 2013 at 11:34 AM, James Bulpin
>> <james.bul...@eu.citrix.com> wrote:
>> > I wrote
>> >> so it looks like agetty is interpreting the "@" as being part of an
>> escape
>> >> sequence.
>> >
>> > Which is probably should anway in get_logname. But the login bash shell
>> does the same too:
>> >
>> > 6859 ?        Ss     0:00 login -- root
>> > 32052 hvc0     Ss+    0:00  \_ -bash
>> > [root@localhost ~]# strace -p 32052
>> > Process 32052 attached - interrupt to quit
>> > read(0, "d", 1)                         = 1
>> > write(2, "d", 1)                        = 1
>> > rt_sigprocmask(SIG_BLOCK, NULL, [], 8)  = 0
>> > read(0, "d", 1)                         = 1
>> > write(2, "d", 1)                        = 1
>> > rt_sigprocmask(SIG_BLOCK, NULL, [], 8)  = 0
>> > read(0, "d", 1)                         = 1
>> > write(2, "d", 1)                        = 1
>> > rt_sigprocmask(SIG_BLOCK, NULL, [], 8)  = 0
>> > read(0, "d", 1)                         = 1
>> > write(2, "d", 1)                        = 1
>> > rt_sigprocmask(SIG_BLOCK, NULL, [], 8)  = 0
>> > read(0, "@", 1)                         = 1
>> > write(2, "\10\10\10\10\33[K", 7)        = 7
>> > rt_sigprocmask(SIG_BLOCK, NULL, [], 8)  = 0
>> >
>> >
>> > _______________________________________________
>> > Xen-api mailing list
>> > Xen-api@lists.xen.org
>> > http://lists.xen.org/cgi-bin/mailman/listinfo/xen-api
>>
>> _______________________________________________
>> Xen-api mailing list
>> Xen-api@lists.xen.org
>> http://lists.xen.org/cgi-bin/mailman/listinfo/xen-api
>
> _______________________________________________
> Xen-api mailing list
> Xen-api@lists.xen.org
> http://lists.xen.org/cgi-bin/mailman/listinfo/xen-api

_______________________________________________
Xen-api mailing list
Xen-api@lists.xen.org
http://lists.xen.org/cgi-bin/mailman/listinfo/xen-api

Reply via email to