Hi Volker, > I couldn't understand too, but with your sizeof(char) question you made me > curious. > > On x86_64, int has a size of 4 and size_t takes 8 (while on x86 both have a > size of 4). > By passing &len to g_io_channel_read (which takes a size_t *buffer_read as > argument), we blank out the first four bytes of buf - which sits directly > after len in memory ('oh wonderful world...'). > > > This can be a problem that the call of the PIN helper program fails. > This problem is also solved with the change from int len to size_t len. > > So, please trash my first patch and take this instead. and here is the patch I am going to apply. Please test it. Regards Marcel