linux_getcwd.c (144290) | linux_getcwd.c (145006) |
---|---|
1/* $OpenBSD: linux_getcwd.c,v 1.2 2001/05/16 12:50:21 ho Exp $ */ 2/* $NetBSD: vfs_getcwd.c,v 1.3.2.3 1999/07/11 10:24:09 sommerfeld Exp $ */ 3/*- 4 * Copyright (c) 1999 The NetBSD Foundation, Inc. 5 * All rights reserved. 6 * 7 * This code is derived from software contributed to The NetBSD Foundation 8 * by Bill Sommerfeld. --- 23 unchanged lines hidden (view full) --- 32 * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS 33 * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN 34 * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) 35 * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 36 * POSSIBILITY OF SUCH DAMAGE. 37 */ 38 39#include <sys/cdefs.h> | 1/* $OpenBSD: linux_getcwd.c,v 1.2 2001/05/16 12:50:21 ho Exp $ */ 2/* $NetBSD: vfs_getcwd.c,v 1.3.2.3 1999/07/11 10:24:09 sommerfeld Exp $ */ 3/*- 4 * Copyright (c) 1999 The NetBSD Foundation, Inc. 5 * All rights reserved. 6 * 7 * This code is derived from software contributed to The NetBSD Foundation 8 * by Bill Sommerfeld. --- 23 unchanged lines hidden (view full) --- 32 * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS 33 * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN 34 * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) 35 * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 36 * POSSIBILITY OF SUCH DAMAGE. 37 */ 38 39#include <sys/cdefs.h> |
40__FBSDID("$FreeBSD: head/sys/compat/linux/linux_getcwd.c 144290 2005-03-29 10:16:12Z jeff $"); | 40__FBSDID("$FreeBSD: head/sys/compat/linux/linux_getcwd.c 145006 2005-04-13 10:59:09Z jeff $"); |
41 42#include "opt_compat.h" 43#include "opt_mac.h" 44 45#include <sys/param.h> 46#include <sys/systm.h> 47#include <sys/namei.h> 48#include <sys/filedesc.h> --- 131 unchanged lines hidden (view full) --- 180 *lvpp = NULL; 181 *uvpp = NULL; 182 return error; 183 } 184 uvp = *uvpp; 185 186 /* If we don't care about the pathname, we're done */ 187 if (bufp == NULL) { | 41 42#include "opt_compat.h" 43#include "opt_mac.h" 44 45#include <sys/param.h> 46#include <sys/systm.h> 47#include <sys/namei.h> 48#include <sys/filedesc.h> --- 131 unchanged lines hidden (view full) --- 180 *lvpp = NULL; 181 *uvpp = NULL; 182 return error; 183 } 184 uvp = *uvpp; 185 186 /* If we don't care about the pathname, we're done */ 187 if (bufp == NULL) { |
188 vrele(lvp); | 188 vput(lvp); |
189 *lvpp = NULL; 190 return 0; 191 } 192 193 fileno = va.va_fileid; 194 195 dirbuflen = DIRBLKSIZ; 196 if (dirbuflen < va.va_blocksize) --- 79 unchanged lines hidden (view full) --- 276 } 277 cpos += reclen; 278 } 279 } 280 } while (!eofflag); 281 error = ENOENT; 282 283out: | 189 *lvpp = NULL; 190 return 0; 191 } 192 193 fileno = va.va_fileid; 194 195 dirbuflen = DIRBLKSIZ; 196 if (dirbuflen < va.va_blocksize) --- 79 unchanged lines hidden (view full) --- 276 } 277 cpos += reclen; 278 } 279 } 280 } while (!eofflag); 281 error = ENOENT; 282 283out: |
284 vrele(lvp); | 284 vput(lvp); |
285 *lvpp = NULL; 286 free(dirbuf, M_TEMP); 287 return error; 288} 289 290 291/* 292 * common routine shared by sys___getcwd() and linux_vn_isunder() --- 190 unchanged lines hidden --- | 285 *lvpp = NULL; 286 free(dirbuf, M_TEMP); 287 return error; 288} 289 290 291/* 292 * common routine shared by sys___getcwd() and linux_vn_isunder() --- 190 unchanged lines hidden --- |