This is the mail archive of the cygwin@cygwin.com mailing list for the Cygwin project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

RE: setup.exe local install with 2.218.2.4 fails, 2.78.2.15works


There is a newer version available ... .6 that has such a fix in it
already.

Rob

> -----Original Message-----
> From: Kilroy, David [mailto:david.kilroy@detroitdiesel.com] 
> Sent: Tuesday, May 14, 2002 10:51 PM
> To: Cygwin
> Subject: RE: setup.exe local install with 2.218.2.4 fails, 
> 2.78.2.15works
> 
> 
> > It seems that all of these bug reports are on Win2K and XP Pro.
> > Has anyone successfully tested the recent setup.exe releases 
> > (since the MD5 updates) on either of these platforms?
> 
> I can confirm that setup 2.218.2.4 works on my Win2k SP2 box. 
> Both install from internet and install from local directory.
> 
> I did get the stack and parse errors in previous md5 setup snapshots.
> 
> In 2.218.2.4 you will also see a crash if you have a file in 
> the local cache directory with a 10 letter filename _and_ the 
> string 'setup.ini' in the full path/filename (Unfortunate if 
> you edit setup.ini with emacs). This may or may not have been 
> fixed in .5 and .6; if it hasn't, see description below.
> 
> 
> Dave.
> 
> 
> 
> line nos from 2.218.2.4 src posted to setup_snapshots.
> ini.cc: find_routine
> 
> line 68:
>   if (!strstr (path, "setup.ini"))
>     return;
> 
> ...
> 
> line 85:
>   /* Attempt to unescape the string */
>   path[strlen(path) -10] = '\0';
>   String mirror = rfc1738_unescape_part (path);
> 
> tries to put null terminator at the last separator.
> 
> If at this point you are at the root of the cache, and you 
> are looking at setup.ini, the byte _before_ path is touched 
> (which may affect further recursion of directories, see 
> find.cc). The file is then parsed. Packages added to the 
> mirror 'setup.ini.
> 
> If we are looking at setup.ini in a cached mirror directory, 
> everything works fine.
> 
> If strlen(path) is 10 at this point (as with the file 
> setup.ini~) the null is placed at the first char of path, 
> causing the rfc1738 code to segfault (passing it a null string).
> 
> We attempt to process other files that match and do not cause 
> this fault. If it is indeed a setup backup, the package 
> entries are added to the database under a bad? mirror name 
> (hence files will not be found if that package is selected?).
> 
> Possible fix off the top of my head (which matches files _only_ called
> setup.ini):
> 
> line 68:
> 	if(!strcmp(path + strlen(path)- 9, "setup.ini"))
> 
> 
> --
> Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple
> Bug reporting:         http://cygwin.com/bugs.html
> Documentation:         http://cygwin.com/docs.html
> FAQ:                   http://cygwin.com/faq/
> 
> 

--
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple
Bug reporting:         http://cygwin.com/bugs.html
Documentation:         http://cygwin.com/docs.html
FAQ:                   http://cygwin.com/faq/


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]