On Sat, 22 May 2004, Ken Dibble wrote: > I know this isn't a cygwin only problem, but my research has failed to > produce an instance of this ever happening. > > Common sense says it is just more likely to happen in a NT/XP > environment with cygwin. > > For reference, this is exim 4.32, downloaded last week. > > In the exim 4.32 source (spool_in.c) the following line causes an error > condition if the user who instantiated the exim process has a space in > their name. > > if (sscanf(CS big_buffer, "%s %ld %ld", originator, &uid, &gid) != 3) > goto SPOOL_FORMAT_ERROR; > > I'm sure a workaround is obvious, I just can't see it.
A proper workaround has already been posted, but the above is indeed a rather fundamental bug in exim (or, rather, in the format of the exim spool file)... The problem is that exim uses a space as a separator for the "UNAME UID GID" line, and space is a valid username character. The problem exists on other systems as well, but manifested itself on Cygwin only because usernames with spaces are more common. One solution is to use an invalid username character as a separator (e.g., '|'). I doubt there could be a Cygwin-specific fix, though, since that would make the spool files incompatible across systems. Igor -- http://cs.nyu.edu/~pechtcha/ |\ _,,,---,,_ [EMAIL PROTECTED] ZZZzz /,`.-'`' -. ;-;;,_ [EMAIL PROTECTED] |,4- ) )-,_. ,\ ( `'-' Igor Pechtchanski, Ph.D. '---''(_/--' `-'\_) fL a.k.a JaguaR-R-R-r-r-r-.-.-. Meow! "I have since come to realize that being between your mentor and his route to the bathroom is a major career booster." -- Patrick Naughton -- Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple Problem reports: http://cygwin.com/problems.html Documentation: http://cygwin.com/docs.html FAQ: http://cygwin.com/faq/