Re: symlink/readlink and trailing slash

2009-09-23 Thread Eric Blake
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 According to Jim Meyering on 9/22/2009 11:17 AM: > Eric Blake wrote: >> That Solaris 9 bug of ignoring trailing slash is pervasive. I'm looking at >> committing this series next, once I run it through tests on more machines. > > These look like fine

Re: symlink/readlink and trailing slash

2009-09-22 Thread Eric Blake
Jim Meyering meyering.net> writes: > > [7/7] readlink: document portability issue with symlink length > > Documentation improvement. Hmm. I guess this means test-readlink and test- > > symlinkat will now fail on AIX and HP-UX (I have access to neither, so I'm just > > going off the comme

Re: symlink/readlink and trailing slash

2009-09-22 Thread Jim Meyering
Eric Blake wrote: > That Solaris 9 bug of ignoring trailing slash is pervasive. I'm looking at > committing this series next, once I run it through tests on more machines. These look like fine improvements. Although I haven't reviewed them carefully, I suggest you go ahead and commit them whenev

Re: symlink/readlink and trailing slash

2009-09-22 Thread Eric Blake
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 According to Eric Blake on 9/21/2009 4:27 PM: > as well as audited other modules where I've recently added trailing slash > checks. This is the only instance I found in my audit of existing modules touched in the last month; and it is actually a miss

Re: symlink/readlink and trailing slash

2009-09-21 Thread Eric Blake
Ben Pfaff cs.stanford.edu> writes: > > + size_t len = strlen (name); > > + if (name[len - 1] == '/') > > +{ > > If name is "" then the "if" statement will reference name[-1]. Thanks. I've rebased my working copy to do: if (len && name[len - 1] == '/') as well as audited other modules w

Re: symlink/readlink and trailing slash

2009-09-21 Thread Ben Pfaff
Eric Blake writes: > +/* Create a symlink, but reject trailing slash. */ > +int > +rpl_symlink (char const *contents, char const *name) > +{ > + size_t len = strlen (name); > + if (name[len - 1] == '/') > +{ If name is "" then the "if" statement will reference name[-1]. > +int > +main ()