Annotation of researchv9/jerq/sgs/libld/allocldptr.c, revision 1.1.1.1

1.1       root        1: #include <stdio.h>
                      2: #include "filehdr.h"
                      3: #include "ldfcn.h"
                      4: #include "lddef.h"
                      5: 
                      6: LDLIST *_ldhead = NULL;
                      7: 
                      8: 
                      9: LDFILE *
                     10: allocldptr()
                     11: {
                     12:        extern char *calloc();
                     13:        extern LDLIST *_ldhead;
                     14:        LDLIST *ldptr, *ldindx;
                     15:        static int last_fnum_ = 0;
                     16: 
                     17:        if ((ldptr = (LDLIST *)calloc(1, LDLSZ)) == NULL)
                     18:                return (NULL);
                     19:        ldptr->ld_next = NULL;
                     20:        if (_ldhead == NULL)
                     21:                _ldhead = ldptr;
                     22:        else
                     23:        {
                     24:                for (ldindx = _ldhead;
                     25:                        ldindx->ld_next != NULL; ldindx = ldindx->ld_next)
                     26:                {
                     27:                }
                     28:                ldindx->ld_next = ldptr;
                     29:        }
                     30:        ldptr->ld_item._fnum_ = ++last_fnum_;
                     31:        return ((LDFILE *)ldptr);
                     32: }
                     33: 
                     34: static char ID[] = "@(#) allocldptr.c: 1.2 2/16/83";

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.