/*-------------------------------------------------------------------+
| |
| 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 */
);