[Pkg-samba-maint] Bug#727065: Bug#727065: [samba] 01/01: debian/patches/bug_221618_precise-64bit-prototype.patch: adjust the LFS handling to work independently of header include order. Closes: #727065.

Andrew Bartlett abartlet at samba.org
Tue Oct 22 18:38:27 UTC 2013


On Tue, 2013-10-22 at 08:12 -0500, Jelmer Vernooij wrote:
> On Tue, Oct 22, 2013 at 11:13:39PM +1300, Andrew Bartlett wrote:
> > On Tue, 2013-10-22 at 03:34 +0000, Steve Langasek wrote:
> > > This is an automated email from the git hooks/post-receive script.
> > > 
> > > vorlon pushed a commit to branch master
> > > in repository samba.
> > > 
> > > commit b6df53758df589060f31e6ceda303cc40dfc82f5
> > > Author: Steve Langasek <vorlon at debian.org>
> > > Date:   Mon Oct 21 20:34:10 2013 -0700
> > > 
> > >     debian/patches/bug_221618_precise-64bit-prototype.patch: adjust the LFS handling to work independently of header include order.  Closes: #727065.
> > > ---
> > >  debian/changelog                                        |    2 ++
> > >  debian/patches/bug_221618_precise-64bit-prototype.patch |   10 ++++++++--
> > >  2 files changed, 10 insertions(+), 2 deletions(-)
> > > 
> > > diff --git a/debian/changelog b/debian/changelog
> > > index 77b02bc..66ec7e4 100644
> > > --- a/debian/changelog
> > > +++ b/debian/changelog
> > > @@ -22,6 +22,8 @@ samba (2:4.0.10+dfsg-3) UNRELEASED; urgency=low
> > >    [ Steve Langasek ]
> > >    * Don't fail on errors from testparm in the samba init script.
> > >      Closes: #726326
> > > +  * debian/patches/bug_221618_precise-64bit-prototype.patch: adjust the LFS
> > > +    handling to work independently of header include order.  Closes: #727065.
> > >  
> > >   -- Ivo De Decker <ivo.dedecker at ugent.be>  Mon, 14 Oct 2013 19:33:04 +0200
> > >  
> > > diff --git a/debian/patches/bug_221618_precise-64bit-prototype.patch b/debian/patches/bug_221618_precise-64bit-prototype.patch
> > > index 31108f2..3f8b302 100644
> > > --- a/debian/patches/bug_221618_precise-64bit-prototype.patch
> > > +++ b/debian/patches/bug_221618_precise-64bit-prototype.patch
> > > @@ -7,12 +7,18 @@ Index: samba/source3/include/libsmbclient.h
> > >  ===================================================================
> > >  --- samba.orig/source3/include/libsmbclient.h
> > >  +++ samba/source3/include/libsmbclient.h
> > > -@@ -79,6 +79,10 @@
> > > +@@ -79,6 +79,16 @@
> > >   #include <fcntl.h>
> > >   #include <utime.h>
> > >   
> > >  +  /* Debian bug #221618 */
> > > -+#define _LARGEFILE64_SOURCE
> > > ++#ifdef _LARGEFILE64_SOURCE
> > > ++#undef _LARGEFILE64_SOURCE
> > > ++#endif
> > > ++#define _LARGEFILE64_SOURCE 1
> > > ++#ifdef _FILE_OFFSET_BITS
> > > ++#undef _FILE_OFFSET_BITS
> > > ++#endif
> > >  +#define _FILE_OFFSET_BITS 64
> > >  +
> > >   #define SMBC_BASE_FD        10000 /* smallest file descriptor returned */
> > 
> > As you know, I don't like this, and I still think this is in the wrong
> > place.  Perhaps we need to get this into our CFLAGS.  Forced into this
> > header, we just ensure the particular .c file this is included in uses
> > 64-bit file handles, but not the other C files that link to that in the
> > binary using our library.  It just pushes the problem around, it doesn't
> > fix it. 
> Perhaps an option is to require building with _LARGEFILE64_SOURCE, 
> adding that flag to the smbclient.pc file and just having something
> along the lines of:
> 
> #if _LARGEFILE64_SOURCE != -1
> #error "Please build with -D_LARGEFILE64_SOURCE"
> #endif
> 
> in the header of smbclient.h.
> 
> The disadvantage of that is that it will probably break the build
> of some existing consumers at the moment (though rightly so).

Indeed!  I just re-read my mail, and realised I wasn't entirely clear.
The smbclient.pc is exactly what I meant, and the #error is a great way
to cross-check this!

Andrew Bartlett

-- 
Andrew Bartlett                                http://samba.org/~abartlet/
Authentication Developer, Samba Team           http://samba.org



More information about the Pkg-samba-maint mailing list