25 #ifndef SRC_XRDZIP_XRDZIPLFH_HH_ 26 #define SRC_XRDZIP_XRDZIPLFH_HH_ 46 inline static uint32_t
initSize(
const off_t &fileSize )
55 LFH(
const std::string &
filename, uint32_t crc, off_t fileSize, time_t time ) :
71 LFH(
const char *buffer )
74 uint32_t signature = 0;
113 std::copy(
filename.begin(),
filename.end(), std::back_inserter( buffer ) );
114 extra->Serialize( buffer );
129 exsize +=
sizeof( uint64_t );
136 exsize +=
sizeof( uint64_t );
141 if( exsize == 0 )
return;
148 extra->FromBuffer( buffer, exsize, ovrflws );
uint32_t compressedSize
Definition: XrdZipLFH.hh:156
void ParseExtra(const char *buffer, uint16_t length)
Definition: XrdZipLFH.hh:120
LFH(const char *buffer)
Constructor from buffer.
Definition: XrdZipLFH.hh:71
std::vector< char > buffer_t
Definition: XrdZipUtils.hh:54
uint16_t time
Definition: XrdZipUtils.hh:130
uint16_t compressionMethod
Definition: XrdZipLFH.hh:153
static void copy_bytes(const INT value, buffer_t &buffer)
Definition: XrdZipUtils.hh:60
uint16_t generalBitFlag
Definition: XrdZipLFH.hh:152
LFH(const std::string &filename, uint32_t crc, off_t fileSize, time_t time)
Constructor.
Definition: XrdZipLFH.hh:55
uint16_t lfhSize
Definition: XrdZipLFH.hh:162
uint16_t extraLength
Definition: XrdZipLFH.hh:159
static uint32_t initSize(const off_t &fileSize)
Convenience function for initializing compressed/uncompressed size.
Definition: XrdZipLFH.hh:46
Definition: XrdZipCDFH.hh:39
A data structure representing ZIP Local File Header.
Definition: XrdZipLFH.hh:41
static const uint32_t lfhSign
Local File Header signature.
Definition: XrdZipLFH.hh:167
Definition: XrdZipUtils.hh:46
std::string filename
Definition: XrdZipLFH.hh:160
dos_timestmp timestmp
Definition: XrdZipLFH.hh:154
Definition: XrdZipUtils.hh:40
uint32_t ZCRC32
Definition: XrdZipLFH.hh:155
Definition: XrdZipUtils.hh:92
void Serialize(buffer_t &buffer)
Serialize the object into a buffer.
Definition: XrdZipLFH.hh:100
uint16_t date
Definition: XrdZipUtils.hh:143
uint16_t filenameLength
Definition: XrdZipLFH.hh:158
static void from_buffer(INT &var, const char *&buffer)
Definition: XrdZipUtils.hh:72
static const uint16_t lfhBaseSize
Definition: XrdZipLFH.hh:168
std::unique_ptr< Extra > extra
Definition: XrdZipLFH.hh:161
uint32_t uncompressedSize
Definition: XrdZipLFH.hh:157
uint16_t minZipVersion
Definition: XrdZipLFH.hh:151