1/*- 2 * Copyright (c) 2001, 2002 Scott Long <scottl@freebsd.org> 3 * All rights reserved. 4 * 5 * Redistribution and use in source and binary forms, with or without 6 * modification, are permitted provided that the following conditions 7 * are met: 8 * 1. Redistributions of source code must retain the above copyright --- 9 unchanged lines hidden (view full) --- 18 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 19 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 20 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 21 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 22 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 23 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 24 * SUCH DAMAGE. 25 * |
26 * $FreeBSD: head/sys/fs/udf/udf_vnops.c 111741 2003-03-02 15:50:23Z des $ |
27 */ 28 29/* udf_vnops.c */ 30/* Take care of the vnode side of things */ 31 32#include <sys/param.h> 33#include <sys/systm.h> 34#include <sys/namei.h> --- 366 unchanged lines hidden (view full) --- 401 fsize = node->fentry->inf_len; 402 403 while (uio->uio_offset < fsize && uio->uio_resid > 0) { 404 offset = uio->uio_offset; 405 size = uio->uio_resid; 406 error = udf_readatoffset(node, &size, offset, &bp, &data); 407 if (error) 408 return (error); |
409 error = uiomove(data, size, uio); |
410 if (bp != NULL) 411 brelse(bp); 412 if (error) 413 break; 414 }; 415 416 return (error); 417} --- 101 unchanged lines hidden (view full) --- 519 *uiodir->cookies++ = cookie; 520 } 521 522 if (uio->uio_resid < de_size) { 523 uiodir->eofflag = 0; 524 return (-1); 525 } 526 |
527 return (uiomove(uiodir->dirent, de_size, uio)); |
528} 529 530static struct udf_dirstream * 531udf_opendir(struct udf_node *node, int offset, int fsize, struct udf_mnt *udfmp) 532{ 533 struct udf_dirstream *ds; 534 535 ds = uma_zalloc(udf_zone_ds, M_WAITOK | M_ZERO); --- 666 unchanged lines hidden --- |