xref: /freebsd/usr.bin/compress/zopen.3 (revision c0b0bcf4d39fe41ec1317d807a407284b7774f59)
19b50d902SRodney W. Grimes.\" Copyright (c) 1992, 1993
29b50d902SRodney W. Grimes.\"	The Regents of the University of California.  All rights reserved.
39b50d902SRodney W. Grimes.\"
49b50d902SRodney W. Grimes.\" Redistribution and use in source and binary forms, with or without
59b50d902SRodney W. Grimes.\" modification, are permitted provided that the following conditions
69b50d902SRodney W. Grimes.\" are met:
79b50d902SRodney W. Grimes.\" 1. Redistributions of source code must retain the above copyright
89b50d902SRodney W. Grimes.\"    notice, this list of conditions and the following disclaimer.
99b50d902SRodney W. Grimes.\" 2. Redistributions in binary form must reproduce the above copyright
109b50d902SRodney W. Grimes.\"    notice, this list of conditions and the following disclaimer in the
119b50d902SRodney W. Grimes.\"    documentation and/or other materials provided with the distribution.
129b50d902SRodney W. Grimes.\" 3. All advertising materials mentioning features or use of this software
139b50d902SRodney W. Grimes.\"    must display the following acknowledgement:
149b50d902SRodney W. Grimes.\"	This product includes software developed by the University of
159b50d902SRodney W. Grimes.\"	California, Berkeley and its contributors.
169b50d902SRodney W. Grimes.\" 4. Neither the name of the University nor the names of its contributors
179b50d902SRodney W. Grimes.\"    may be used to endorse or promote products derived from this software
189b50d902SRodney W. Grimes.\"    without specific prior written permission.
199b50d902SRodney W. Grimes.\"
209b50d902SRodney W. Grimes.\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
219b50d902SRodney W. Grimes.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
229b50d902SRodney W. Grimes.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
239b50d902SRodney W. Grimes.\" ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
249b50d902SRodney W. Grimes.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
259b50d902SRodney W. Grimes.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
269b50d902SRodney W. Grimes.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
279b50d902SRodney W. Grimes.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
289b50d902SRodney W. Grimes.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
299b50d902SRodney W. Grimes.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
309b50d902SRodney W. Grimes.\" SUCH DAMAGE.
319b50d902SRodney W. Grimes.\"
329b50d902SRodney W. Grimes.\"	@(#)zopen.3	8.1 (Berkeley) 6/9/93
339b50d902SRodney W. Grimes.\"
349b50d902SRodney W. Grimes.Dd June 9, 1993
359b50d902SRodney W. Grimes.Dt ZOPEN 3
369b50d902SRodney W. Grimes.Os
379b50d902SRodney W. Grimes.Sh NAME
389b50d902SRodney W. Grimes.Nm zopen
399b50d902SRodney W. Grimes.Nd compressed stream open function
409b50d902SRodney W. Grimes.Sh SYNOPSIS
416127186dSWolfram Schneider.Fd #include "zopen.h"
429b50d902SRodney W. Grimes.Ft FILE *
439b50d902SRodney W. Grimes.Fn zopen "const char *path" "const char *mode" "int bits"
449b50d902SRodney W. Grimes.Sh DESCRIPTION
459b50d902SRodney W. GrimesThe
469b50d902SRodney W. Grimes.Fn zopen
479b50d902SRodney W. Grimesfunction
489b50d902SRodney W. Grimesopens the compressed file whose name is the string pointed to by
499b50d902SRodney W. Grimes.Fa path
509b50d902SRodney W. Grimesand associates a stream with it.
519b50d902SRodney W. Grimes.Pp
529b50d902SRodney W. GrimesThe argument
539b50d902SRodney W. Grimes.Fa mode
549b50d902SRodney W. Grimespoints to one of the following one-character strings:
559b50d902SRodney W. Grimes.Bl -tag -width indent
569b50d902SRodney W. Grimes.It Dq Li r
579b50d902SRodney W. GrimesOpen compressed file for reading.
589b50d902SRodney W. GrimesThe stream is positioned at the beginning of the file.
599b50d902SRodney W. Grimes.It Dq Li w
609b50d902SRodney W. GrimesTruncate file to zero length or create compressed file for writing.
619b50d902SRodney W. GrimesThe stream is positioned at the beginning of the file.
629b50d902SRodney W. Grimes.El
639b50d902SRodney W. Grimes.Pp
649b50d902SRodney W. GrimesAny created files will have mode
659b50d902SRodney W. Grimes.Pf \\*q Dv S_IRUSR
669b50d902SRodney W. Grimes\&|
679b50d902SRodney W. Grimes.Dv S_IWUSR
689b50d902SRodney W. Grimes\&|
699b50d902SRodney W. Grimes.Dv S_IRGRP
709b50d902SRodney W. Grimes\&|
719b50d902SRodney W. Grimes.Dv S_IWGRP
729b50d902SRodney W. Grimes\&|
739b50d902SRodney W. Grimes.Dv S_IROTH
749b50d902SRodney W. Grimes\&|
759b50d902SRodney W. Grimes.Dv S_IWOTH Ns \\*q
769b50d902SRodney W. Grimes.Pq Li 0666 ,
779b50d902SRodney W. Grimesas modified by the process'
789b50d902SRodney W. Grimesumask value (see
799b50d902SRodney W. Grimes.Xr umask 2 ) .
809b50d902SRodney W. Grimes.Pp
819b50d902SRodney W. GrimesFiles may only be read or written.
829b50d902SRodney W. GrimesSeek operations are not allowed.
839b50d902SRodney W. Grimes.Pp
849b50d902SRodney W. GrimesThe
859b50d902SRodney W. Grimes.Fa bits
869b50d902SRodney W. Grimesargument, if non-zero, is set to the bits code limit.
879b50d902SRodney W. GrimesIf zero, the default is 16.
889b50d902SRodney W. GrimesSee
899b50d902SRodney W. Grimes.Fn compress 1
909b50d902SRodney W. Grimesfor more information.
919b50d902SRodney W. Grimes.Sh RETURN VALUES
929b50d902SRodney W. GrimesUpon successful completion
939b50d902SRodney W. Grimes.Fn zopen
949b50d902SRodney W. Grimesreturns a
959b50d902SRodney W. Grimes.Tn FILE
969b50d902SRodney W. Grimespointer.
979b50d902SRodney W. GrimesOtherwise,
989b50d902SRodney W. Grimes.Dv NULL
999b50d902SRodney W. Grimesis returned and the global variable
1009b50d902SRodney W. Grimes.Va errno
1019b50d902SRodney W. Grimesis set to indicate the error.
1029b50d902SRodney W. Grimes.Sh ERRORS
1039b50d902SRodney W. Grimes.Bl -tag -width [EINVAL]
1049b50d902SRodney W. Grimes.It Bq Er EINVAL
1059b50d902SRodney W. GrimesThe
1069b50d902SRodney W. Grimes.Fa mode
1079b50d902SRodney W. Grimesor
1089b50d902SRodney W. Grimes.Fa bits
1099b50d902SRodney W. Grimesarguments specified to
1109b50d902SRodney W. Grimes.Fn zopen
1119b50d902SRodney W. Grimeswere invalid.
1129b50d902SRodney W. Grimes.It Bq Er EFTYPE
1139b50d902SRodney W. GrimesThe compressed file starts with an invalid header, or the compressed
1149b50d902SRodney W. Grimesfile is compressed with more bits than can be handled.
1159b50d902SRodney W. Grimes.El
1169b50d902SRodney W. Grimes.Pp
1179b50d902SRodney W. GrimesThe
1189b50d902SRodney W. Grimes.Fn zopen
1199b50d902SRodney W. Grimesfunction may also fail and set
1209b50d902SRodney W. Grimes.Va errno
1219b50d902SRodney W. Grimesfor any of the errors specified for the routines
1229b50d902SRodney W. Grimes.Xr fopen 3
1239b50d902SRodney W. Grimesor
1249b50d902SRodney W. Grimes.Xr funopen 3 .
1259b50d902SRodney W. Grimes.Sh SEE ALSO
1269b50d902SRodney W. Grimes.Xr compress 1 ,
1279b50d902SRodney W. Grimes.Xr fopen 3 ,
1289b50d902SRodney W. Grimes.Xr funopen 3
1299b50d902SRodney W. Grimes.Sh HISTORY
1309b50d902SRodney W. GrimesThe
1319b50d902SRodney W. Grimes.Nm zopen
1329b50d902SRodney W. Grimesfunction
133c0b0bcf4SMike Pritchardfirst appeared in
134c0b0bcf4SMike Pritchard.Bx 4.4 .
1359b50d902SRodney W. Grimes.Sh BUGS
1369b50d902SRodney W. GrimesThe
1379b50d902SRodney W. Grimes.Fn zopen
1389b50d902SRodney W. Grimesfunction
1399b50d902SRodney W. Grimesmay not be portable to systems other than
1409b50d902SRodney W. Grimes.Bx .
141