Lines Matching refs:file
56 opaqueident(Dssfile_t* file, void* buf, size_t size, Dssdisc_t* disc)
58 register Opaque_t* opaque = (Opaque_t*)file->dss->meth->data;
75 file->skip = opaque->magic.size;
85 opaquefopen(Dssfile_t* file, Dssdisc_t* disc)
87 file->data = &((Opaque_t*)file->dss->meth->data)->magic.size;
88 if (file->skip && !sfreserve(file->io, file->skip, 0))
102 opaquefclose(Dssfile_t* file, Dssdisc_t* disc)
104 if (!file)
114 opaqueread(register Dssfile_t* file, register Dssrecord_t* record, Dssdisc_t* disc)
116 record->data = sfreserve(file->io, *((size_t*)file->data), 0);
117 record->size = sfvalue(file->io);
121 (*disc->errorf)(NiL, disc, 2, "%slast record truncated -- record ignored", cxlocation(file->dss->cx, record));
130 opaquewrite(Dssfile_t* file, Dssrecord_t* record, Dssdisc_t* disc)
132 return sfwrite(file->io, record->data, record->size) == record->size ? 0 : -1;