gpg 1.0.3 on Solaris w/ large file support

Nils Ellmenreich Nils@infosun.fmi.uni-passau.de
Tue, 17 Oct 2000 15:05:28 +0200 (CEST)


Hi,


>>>"LH" == Lars Hecking <lhecking@nmrc.ie> writes:
LH> On Wed, 4 Oct 2000 15:27:15 +0200 (CEST), Nils Ellmenreich wrote: >> This is because Solaris >> requires the compilation flag -D_LARGEFILE64_SOURCE to support these >> functions. LH> From my understanding of large file support, this is not correct. OK, what I meant was that the 1.0.3 code required this flag under Solaris 2.6 to compile, which is correct (at least on my machines). ;-) LH> According http://ftp.sas.com/standards/large.file/x_open.20Mar96.html, LH> _LARGEFILE64_SOURCE and the *64() functions/ *64 structs are part of LH> a transitional ABI, and are only required if one mixes 32/64bit types LH> in the same program. Right, so in the end, the way you write the code determines which flags you actually need. There are circumstances where it makes perfect sense to use that transitional interface. LH> I have a first cut at a patch for gnupg-1.0.3b that adds large file support LH> at configure level. But there is still work to be done (or has it been LH> done already?) in util/iobuf.c. I think that Not yet. LH> - the redefinition of fopen() and fstat() must go LH> - u32 iobuf_get_filelength( IOBUF a ) must be rewritten to LH> not explicitly return u32, but a different type that is 64 bit LH> on 64 bit platforms LH> - accordingly, the struct stat64 and LH> "#if defined (HAVE_FOPEN64) && defined (HAVE_FSTAT64)" stuff in LH> iobuf_get_filelength() must go. LH> I could be totally off track here, of course ;-) No, you are not. I've been playing around with it myself, only to find out that I don't know enough about this. Now, after some reading I'll be looking at it again (hopefully this week). The above remarks look good to me. LH> Will I post my patch here? I have no ftp site to put it on. Hm, trouble is we want to have it in the distribution. If I understand Werner correctly, only very small patches (like 3 lines or so) can be accepted. For longer stuff, you need to sign some legal papers to transfer the copyright to the FSF. I think, a good way to proceed might be that you explain to me what you have done already (like the above list), so that I can reprogram it and start from there. LH> It compiles nicely on 32/64bit Solaris, but doesn't on IRIX/HP-UX/DU. LH> I _think_ that I have problems compiling gpg on these platforms anyway ... Right, if we have it compiling *and* working for Solaris, Werner suggested we make a snapshot and have some HP-UX guys help us out. I don't have access to any of the above systems so I can't try it. Cheers, Nils PS. Lars, always interested in the same stuff as me, right?? :-) -- Nils Ellmenreich - Fakultaet fuer Math./Informatik - Nils @ http://www.fmi.uni-passau.de/~nils - Univ. Passau - Uni-Passau.DE