/*********************************************************************** * * * This software is part of the ast package * * Copyright (c) 1985-2011 AT&T Intellectual Property * * and is licensed under the * * Eclipse Public License, Version 1.0 * * by AT&T Intellectual Property * * * * A copy of the License is available at * * http://www.eclipse.org/org/documents/epl-v10.html * * (with md5 checksum b35adb5213ca9657e911e9befb180842) * * * * Information and Software Systems Research * * AT&T Research * * Florham Park NJ * * * * Glenn Fowler * * David Korn * * Phong Vo * * * ***********************************************************************/ #if defined(_UWIN) && defined(_BLD_ast) void _STUB_vmsegment(){} #else #include "vmhdr.h" /* Get the segment containing this address ** ** Written by Kiem-Phong Vo, kpv@research.att.com, 02/07/95 */ #if __STD_C Void_t* vmsegment(Vmalloc_t* vm, Void_t* addr) #else Void_t* vmsegment(vm, addr) Vmalloc_t* vm; /* region */ Void_t* addr; /* address */ #endif { Seg_t *seg; Vmdata_t *vd = vm->data; SETLOCK(vm, 0); for(seg = vd->seg; seg; seg = seg->next) if((Vmuchar_t*)addr >= (Vmuchar_t*)seg->addr && (Vmuchar_t*)addr < (Vmuchar_t*)seg->baddr ) break; CLRLOCK(vm, 0); return seg ? (Void_t*)seg->addr : NIL(Void_t*); } #endif