/*-------------------------------------------------------------------+ | | | Copyright (c) 1996, SAS Institute Inc. | | Unpublished - All Rights Reserved | | S A S / C S A M P L E | | Name: PDSMEMH | | Language: C | | Purpose: Various global defines and function prototypes for | | public functions. | | | | For Sample: prefix.SAMPLE.C(P2UPM) | | | +-------------------------------------------------------------------*/ /*--------------------------------------------------------------------+ | Common #defines | +--------------------------------------------------------------------*/ #define DDN_SYSPUNCH "SYSPUNCH" /* DDname: Output */ #define DDN_SYSLIB "SYSLIB " /* DDname: Input */ #define ANOMALY 4 /* Indicates orphaned alias */ /* members exist or an empty */ /* real member was found */ #define MAX_MEMBER_NAME 8 #define REALMEMB "\xff\xff\xff\xff\xff\xff\xff\xff" #define EQUAL 0 #define TRUE 1 #define FALSE 0 /*--------------------------------------------------------------------+ | Prototype: pdsgetm() - reads PDS directory and constructs skiplist | | of members, input from DDN SYSLIB. | +--------------------------------------------------------------------*/ int pdsgetm ( NODE * (*), /* real member skiplist */ NODE * (*) /* alias member skiplist */ ); /*--------------------------------------------------------------------+ | Prototype: public functions used to create and maintain skiplist | +--------------------------------------------------------------------*/ extern int freelist ( NODE * ); extern NODE * newlist ( void ); extern NODE * insert_node ( int (*)(), /* Ptr to compare function */ NODE *, /* SkipList head node */ PDS_MBR * /* PDS data to be inserted */ ); extern NODE * search_node ( int (*)(), /* Ptr to compare function */ NODE *, /* SkipList head node */ PDS_MBR * /* PDS data to be deleted */ ); extern int delete_node ( int (*)(), /* Ptr to compare function */ NODE *, /* SkipList head node */ PDS_MBR * /* PDS data to be searched s */ /* for */ ); /*--------------------------------------------------------------------+ | Prototype: Functions used to compare nodes in skiplist. Functions | | are used by pdsgetm() and updbld(). | +--------------------------------------------------------------------*/ extern int compare_by_ttr ( PDS_MBR *, PDS_MBR *); extern int compare_by_name (PDS_MBR *, PDS_MBR *); /*--------------------------------------------------------------------+ | Prototype: updbld() is controlling function which builds the | | IEBUPDTE input file. | +--------------------------------------------------------------------*/ int updbld ( NODE * (*), /* real member skiplist */ NODE * (*) /* alias member skiplist */ );