Changeset 5103 for trunk/src


Ignore:
Timestamp:
Feb 11, 2001, 4:16:49 PM (25 years ago)
Author:
bird
Message:

Added import name length check. Added support for revision up to 'E'. For Not-Required entries blank object number.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/win32k/dev16/extract.c

    r4972 r5103  
    1 /* $Id: extract.c,v 1.4 2001-01-19 02:27:32 bird Exp $
     1/* $Id: extract.c,v 1.5 2001-02-11 15:16:49 bird Exp $
    22 *
    33 * Description:     SymDB entry generator.
     
    2626#define INCL_DOS
    2727#define INCL_NOPMAPI
     28#define INCL_OS2KRNL_LDR
    2829
    2930/*******************************************************************************
     
    4041#undef  CODE16_INIT
    4142#define CODE16_INIT
    42 #include "os2krnl.h"                    /* must be included before dev1632.h! */
     43#include "os2Krnl.h"                    /* must be included before dev1632.h! */
    4344#include "probkrnl.h"
    4445#include "dev1632.h"
     
    166167            case 'H':   printf16(" | KF_HALFSTRICT"); break;
    167168        }
    168         if (psz[cchNum + 2] == 'A')
    169             printf16(" | KF_REV_A");
     169        if (psz[cchNum + 2] >= 'A' && psz[cchNum + 2] <= 'E')
     170            printf16(" | KF_REV_%c", psz[cchNum + 2]);
    170171
    171172        printf16(", %d,\n"
     
    177178            char *psz = aImportTab[i].achName;
    178179            printf16("            {%-2d, 0x%08lx}, /* %s */\n",
    179                      aImportTab[i].iObject,
     180                     aImportTab[i].fFound ? aImportTab[i].iObject : 0,
    180181                     aImportTab[i].fFound ? aImportTab[i].offObject : 0xFFFFFFFFUL,
    181182                     (char *)&aImportTab[i].achName[0]
     
    213214    APIRET  rc;
    214215    const char *  psz;
     216    int     i;
    215217
    216218    /*
     
    220222    paKrnlOTEs = &KrnlInfo.aObjects[0];
    221223
     224    /*
     225     * Check name lengths.
     226     */
     227    for (i = 0; i < NBR_OF_KRNLIMPORTS; i++)
     228    {
     229        if (kstrlen(aImportTab[i].achName) != (int)aImportTab[i].cchName)
     230        {
     231            printf16("internal error - bad length of entry %d - %s. %d should be %d.\n",
     232                     i, aImportTab[i].achName, aImportTab[i].cchName, kstrlen(aImportTab[i].achName));
     233            return -1;
     234        }
     235    }
     236
     237    /*
     238     * Do work.
     239     */
    222240    if (argc > 1)
    223241    {
     
    252270        int         i;
    253271
    254         printf16("/* $Id: extract.c,v 1.4 2001-01-19 02:27:32 bird Exp $\n"
     272        printf16("/* $Id: extract.c,v 1.5 2001-02-11 15:16:49 bird Exp $\n"
    255273                 "*\n"
    256274                 "* Autogenerated kernel symbol database.\n"
Note: See TracChangeset for help on using the changeset viewer.