FreeBSD/libexec/rtld-elf/rtld.c
/*
 * Given a shared object, traverse its list of needed objects, and load
 * each of them.  Returns 0 on success.  Generates an error message and
 * returns -1 on failure.
 */
Given a shared object, traverse its list of needed objects, and load
each of them.  Returns 0 on success.  Generates an error message and
returns -1 on failure.
Given a shared object traverse its list of needed objects and load each of them . Returns 0 on success . Generates an error message and returns - 1 on failure .
static int
load_needed_objects(Obj_Entry *first, int flags)
{
    Obj_Entry *obj;
    for (obj = first; obj != NULL; obj = TAILQ_NEXT(obj, next)) {
	if (obj->marker)
	    continue;
	if (process_needed(obj, obj->needed, flags) == -1)
	    return (-1);
    }
    return (0);
}
static int load_needed_objects ( Obj_Entry * first , int flags ) { Obj_Entry * obj ; for ( obj = first ; obj != NULL ; obj = TAILQ_NEXT ( obj , next ) ) { if ( obj -> marker ) continue ; if ( process_needed ( obj , obj -> needed , flags ) == -1 ) return ( -1 ) ; } return ( 0 ) ; }
Given a shared object, traverse its list of needed objects, and load
 each of them.
Given a shared object traverse its list of needed objects and load each of them .