Samba 3.0: vfs_netatalk.c

Anthony Liguori aliguor at us.ibm.com
Tue Feb 11 21:00:18 GMT 2003





> One catch is that there is a difference between BSD and System V
> implementations, but that's something that should be handle-able with
> ./configure.  It seems to me that in either case the data could be sorted
> using the binary tree stuff or by qsort().  This should be fairly
do-able.

On some systems, scandir() doesn't even exist.  I think the only reason why
there's been any discussion as to whether this is a problem is because of
the fact that it's a module.  I think the general sentiment has been that
even modules need to be concerned about portability unless there's good
reason.

Anthony Liguori
Linux/Active Directory Interoperability
Linux Technology Center (LTC) - IBM Austin
E-mail: aliguor at us.ibm.com
Phone: (512) 838-1208
Tie Line: 678-1208


                                                                                                                                         
                      "Christopher R. Hertel" <crh at ubiqx.mn.org>                                                                         
                      Sent by:                                               To:       samba-technical at samba.org                         
                      samba-technical-bounces+aliguor=us.ibm.com at list        cc:                                                         
                      s.samba.org                                            Subject:  Re: Samba 3.0: vfs_netatalk.c                     
                                                                                                                                         
                                                                                                                                         
                      02/11/2003 02:52 PM                                                                                                
                                                                                                                                         
                                                                                                                                         



Paul Green wrote:
> Anthony Liguori [mailto:aliguor at us.ibm.com] wrote:
> >
> > scandir() (and it's [alpha|version]sort() brethren) is a BSD/Linux-ism
> > and therefore isn't very portable.  Since this is in a VFS module (and
> > therefore only optional) I guess this is ok.
>
> then Herb Lewis [mailto:herb at sgi.com] found this info:
> > IRIX: scandir, scandir64, alphasort, alphasort64
> > BSD: scandir, alphasort
>
> I just checked and neither scandir* nor alphasort* are in POSIX-1996 or
> POSIX-2001.  I'm not trying to build vfs_netatalk here on VOS, but if I
> was, it looks like I'd be writing some code first. I don't consider
> these functions portable either.  My vote is for sticking with functions
> in POSIX if at all possible.
>
> PG

I have not been following this thread closely, but it occurs to me that we
have tools that would make this easy to implement by hand.  If I
understand the docs, the goal is to create an array of pointers to
directory entry structures (the latter allocated via malloc()).

One catch is that there is a difference between BSD and System V
implementations, but that's something that should be handle-able with
./configure.  It seems to me that in either case the data could be sorted
using the binary tree stuff or by qsort().  This should be fairly do-able.

Chris -)-----

--
Samba Team -- http://www.samba.org/     -)-----   Christopher R. Hertel
jCIFS Team -- http://jcifs.samba.org/   -)-----   ubiqx development, uninq.
ubiqx Team -- http://www.ubiqx.org/     -)-----   crh at ubiqx.mn.org
OnLineBook -- http://ubiqx.org/cifs/    -)-----   crh at ubiqx.org





More information about the samba-technical mailing list