This file is indexed.

/usr/include/wx-2.8/wx/zstream.h is in wx2.8-headers 2.8.12.1-6ubuntu2.

This file is owned by root:root, with mode 0o644.

The actual contents of the file can be viewed below.

  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
/////////////////////////////////////////////////////////////////////////////
// Name:        wx/zstream.h
// Purpose:     Memory stream classes
// Author:      Guilhem Lavaux
// Modified by: Mike Wetherell
// Created:     11/07/98
// RCS-ID:      $Id: zstream.h 54688 2008-07-18 08:06:44Z MW $
// Copyright:   (c) Guilhem Lavaux
// Licence:     wxWindows licence
/////////////////////////////////////////////////////////////////////////////
#ifndef _WX_WXZSTREAM_H__
#define _WX_WXZSTREAM_H__

#include "wx/defs.h"

#if wxUSE_ZLIB && wxUSE_STREAMS

#include "wx/stream.h"

// Compression level
enum {
    wxZ_DEFAULT_COMPRESSION = -1,
    wxZ_NO_COMPRESSION = 0,
    wxZ_BEST_SPEED = 1,
    wxZ_BEST_COMPRESSION = 9
};

// Flags
enum {
#if WXWIN_COMPATIBILITY_2_4
    wxZLIB_24COMPATIBLE = 4, // read v2.4.x data without error
#endif
    wxZLIB_NO_HEADER = 0,    // raw deflate stream, no header or checksum
    wxZLIB_ZLIB = 1,         // zlib header and checksum
    wxZLIB_GZIP = 2,         // gzip header and checksum, requires zlib 1.2.1+
    wxZLIB_AUTO = 3          // autodetect header zlib or gzip
};

class WXDLLIMPEXP_BASE wxZlibInputStream: public wxFilterInputStream {
 public:
  wxZlibInputStream(wxInputStream& stream, int flags = wxZLIB_AUTO);
  wxZlibInputStream(wxInputStream *stream, int flags = wxZLIB_AUTO);
  virtual ~wxZlibInputStream();

  char Peek() { return wxInputStream::Peek(); }
  wxFileOffset GetLength() const { return wxInputStream::GetLength(); }

  static bool CanHandleGZip();

 protected:
  size_t OnSysRead(void *buffer, size_t size);
  wxFileOffset OnSysTell() const { return m_pos; }

 private:
  void Init(int flags);

 protected:
  size_t m_z_size;
  unsigned char *m_z_buffer;
  struct z_stream_s *m_inflate;
  wxFileOffset m_pos;
#if WXWIN_COMPATIBILITY_2_4
  bool m_24compatibilty;
#endif

  DECLARE_NO_COPY_CLASS(wxZlibInputStream)
};

class WXDLLIMPEXP_BASE wxZlibOutputStream: public wxFilterOutputStream {
 public:
  wxZlibOutputStream(wxOutputStream& stream, int level = -1, int flags = wxZLIB_ZLIB);
  wxZlibOutputStream(wxOutputStream *stream, int level = -1, int flags = wxZLIB_ZLIB);
  virtual ~wxZlibOutputStream() { Close(); }

  void Sync() { DoFlush(false); }
  bool Close();
  wxFileOffset GetLength() const { return m_pos; }

  static bool CanHandleGZip();

 protected:
  size_t OnSysWrite(const void *buffer, size_t size);
  wxFileOffset OnSysTell() const { return m_pos; }

  virtual void DoFlush(bool final);

 private:
  void Init(int level, int flags);

 protected:
  size_t m_z_size;
  unsigned char *m_z_buffer;
  struct z_stream_s *m_deflate;
  wxFileOffset m_pos;

  DECLARE_NO_COPY_CLASS(wxZlibOutputStream)
};

class WXDLLIMPEXP_BASE wxZlibClassFactory: public wxFilterClassFactory
{
public:
    wxZlibClassFactory();

    wxFilterInputStream *NewStream(wxInputStream& stream) const
        { return new wxZlibInputStream(stream); }
    wxFilterOutputStream *NewStream(wxOutputStream& stream) const
        { return new wxZlibOutputStream(stream, -1); }
    wxFilterInputStream *NewStream(wxInputStream *stream) const
        { return new wxZlibInputStream(stream); }
    wxFilterOutputStream *NewStream(wxOutputStream *stream) const
        { return new wxZlibOutputStream(stream, -1); }

    const wxChar * const *GetProtocols(wxStreamProtocolType type
                                       = wxSTREAM_PROTOCOL) const;

private:
    DECLARE_DYNAMIC_CLASS(wxZlibClassFactory)
};

class WXDLLIMPEXP_BASE wxGzipClassFactory: public wxFilterClassFactory
{
public:
    wxGzipClassFactory();

    wxFilterInputStream *NewStream(wxInputStream& stream) const
        { return new wxZlibInputStream(stream); }
    wxFilterOutputStream *NewStream(wxOutputStream& stream) const
        { return new wxZlibOutputStream(stream, -1, wxZLIB_GZIP); }
    wxFilterInputStream *NewStream(wxInputStream *stream) const
        { return new wxZlibInputStream(stream); }
    wxFilterOutputStream *NewStream(wxOutputStream *stream) const
        { return new wxZlibOutputStream(stream, -1, wxZLIB_GZIP); }

    const wxChar * const *GetProtocols(wxStreamProtocolType type
                                       = wxSTREAM_PROTOCOL) const;

private:
    DECLARE_DYNAMIC_CLASS(wxGzipClassFactory)
};

#endif
  // wxUSE_ZLIB && wxUSE_STREAMS

#endif
   // _WX_WXZSTREAM_H__