]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/blob - usr.bin/compress/zopen.3
This commit was generated by cvs2svn to compensate for changes in r1752,
[FreeBSD/FreeBSD.git] / usr.bin / compress / zopen.3
1 .\" Copyright (c) 1992, 1993
2 .\"     The Regents of the University of California.  All rights reserved.
3 .\"
4 .\" Redistribution and use in source and binary forms, with or without
5 .\" modification, are permitted provided that the following conditions
6 .\" are met:
7 .\" 1. Redistributions of source code must retain the above copyright
8 .\"    notice, this list of conditions and the following disclaimer.
9 .\" 2. Redistributions in binary form must reproduce the above copyright
10 .\"    notice, this list of conditions and the following disclaimer in the
11 .\"    documentation and/or other materials provided with the distribution.
12 .\" 3. All advertising materials mentioning features or use of this software
13 .\"    must display the following acknowledgement:
14 .\"     This product includes software developed by the University of
15 .\"     California, Berkeley and its contributors.
16 .\" 4. Neither the name of the University nor the names of its contributors
17 .\"    may be used to endorse or promote products derived from this software
18 .\"    without specific prior written permission.
19 .\"
20 .\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
21 .\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
22 .\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
23 .\" ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
24 .\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
25 .\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
26 .\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
27 .\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
28 .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
29 .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
30 .\" SUCH DAMAGE.
31 .\"
32 .\"     @(#)zopen.3     8.1 (Berkeley) 6/9/93
33 .\"
34 .Dd June 9, 1993
35 .Dt ZOPEN 3
36 .Os
37 .Sh NAME
38 .Nm zopen
39 .Nd compressed stream open function
40 .Sh SYNOPSIS
41 .Fd #include <stdio.h>
42 .Ft FILE *
43 .Fn zopen "const char *path" "const char *mode" "int bits"
44 .Sh DESCRIPTION
45 The
46 .Fn zopen
47 function
48 opens the compressed file whose name is the string pointed to by
49 .Fa path
50 and associates a stream with it.
51 .Pp
52 The argument
53 .Fa mode
54 points to one of the following one-character strings:
55 .Bl -tag -width indent
56 .It Dq Li r
57 Open compressed file for reading.
58 The stream is positioned at the beginning of the file.
59 .It Dq Li w
60 Truncate file to zero length or create compressed file for writing.
61 The stream is positioned at the beginning of the file.
62 .El
63 .Pp
64 Any created files will have mode
65 .Pf \\*q Dv S_IRUSR
66 \&|
67 .Dv S_IWUSR
68 \&|
69 .Dv S_IRGRP
70 \&|
71 .Dv S_IWGRP
72 \&|
73 .Dv S_IROTH
74 \&|
75 .Dv S_IWOTH Ns \\*q
76 .Pq Li 0666 ,
77 as modified by the process'
78 umask value (see
79 .Xr umask 2 ) .
80 .Pp
81 Files may only be read or written.
82 Seek operations are not allowed.
83 .Pp
84 The
85 .Fa bits
86 argument, if non-zero, is set to the bits code limit.
87 If zero, the default is 16.
88 See
89 .Fn compress 1
90 for more information.
91 .Sh RETURN VALUES
92 Upon successful completion
93 .Fn zopen
94 returns a
95 .Tn FILE
96 pointer.
97 Otherwise,
98 .Dv NULL
99 is returned and the global variable
100 .Va errno
101 is set to indicate the error.
102 .Sh ERRORS
103 .Bl -tag -width [EINVAL]
104 .It Bq Er EINVAL
105 The
106 .Fa mode
107 or
108 .Fa bits
109 arguments specified to
110 .Fn zopen
111 were invalid.
112 .It Bq Er EFTYPE
113 The compressed file starts with an invalid header, or the compressed
114 file is compressed with more bits than can be handled.
115 .El
116 .Pp
117 The
118 .Fn zopen
119 function may also fail and set
120 .Va errno
121 for any of the errors specified for the routines
122 .Xr fopen 3
123 or
124 .Xr funopen 3 .
125 .Sh SEE ALSO
126 .Xr compress 1 ,
127 .Xr fopen 3 ,
128 .Xr funopen 3
129 .Sh HISTORY
130 The
131 .Nm zopen
132 function
133 first appeared in 4.4BSD.
134 .Sh BUGS
135 The
136 .Fn zopen
137 function
138 may not be portable to systems other than
139 .Bx .