openbmc/build/tmp/deploy/sdk/witherspoon-2019-08-08/sysroots/armv6-openbmc-linux-gnueabi/usr/src/debug/shadow/4.6-r0/shadow-4.6/libmisc/ttytype.c
void ttytype(const char* line)
{
    FILE* fp;
    char buf[BUFSIZ];
    const char* typefile;
    char* cp;
    char type[1024] = "";
    char port[1024];

    if (getenv("TERM") != NULL)
    {
        return;
    }
    typefile = getdef_str("TTYTYPE_FILE");
    if (NULL == typefile)
    {
        return;
    }
    if (access(typefile, F_OK) != 0)
    {
        return;
    }

    fp = fopen(typefile, "r");
    if (NULL == fp)
    {
        perror(typefile);
        return;
    }
    while (fgets(buf, (int)sizeof buf, fp) == buf)
    {
        if (buf[0] == '#')
        {
            continue;
        }

        cp = strchr(buf, '\n');
        if (NULL != cp)
        {
            *cp = '\0';
        }

        if ((sscanf(buf, "%1023s %1023s", type, port) == 2) &&
            (strcmp(line, port) == 0))
        {
            break;
        }
    }
    if ((feof(fp) == 0) && (ferror(fp) == 0) && (type[0] != '\0'))
    {
        addenv("TERM", type);
    }

    (void)fclose(fp);
}
/*
 * ttytype - set ttytype from port to terminal type mapping database
 */
set ttytype from port to terminal type mapping database
set ttytype from port to terminal type mapping database
void ttytype(const char* line)
{
    FILE* fp;
    char buf[BUFSIZ];
    const char* typefile;
    char* cp;
    char type[1024] = "";
    char port[1024];
    if (getenv("TERM") != NULL)
    {
        return;
    }
    typefile = getdef_str("TTYTYPE_FILE");
    if (NULL == typefile)
    {
        return;
    }
    if (access(typefile, F_OK) != 0)
    {
        return;
    }
    fp = fopen(typefile, "r");
    if (NULL == fp)
    {
        perror(typefile);
        return;
    }
    while (fgets(buf, (int)sizeof buf, fp) == buf)
    {
        if (buf[0] == '#')
        {
            continue;
        }
        cp = strchr(buf, '\n');
        if (NULL != cp)
        {
            *cp = '\0';
        }
        if ((sscanf(buf, "%1023s %1023s", type, port) == 2) &&
            (strcmp(line, port) == 0))
        {
            break;
        }
    }
    if ((feof(fp) == 0) && (ferror(fp) == 0) && (type[0] != '\0'))
    {
        addenv("TERM", type);
    }
    (void)fclose(fp);
}
void ttytype ( const char * line ) { FILE * fp ; char buf [ BUFSIZ ] ; const char * typefile ; char * cp ; char type [ 1024 ] = " " ; char port [ 1024 ] ; if ( getenv ( " " ) != NULL ) { return ; } typefile = getdef_str ( " " ) ; if ( NULL == typefile ) { return ; } if ( access ( typefile , F_OK ) != 0 ) { return ; } fp = fopen ( typefile , " " ) ; if ( NULL == fp ) { perror ( typefile ) ; return ; } while ( fgets ( buf , ( int ) sizeof buf , fp ) == buf ) { if ( buf [ 0 ] == ' ' ) { continue ; } cp = strchr ( buf , ' \n ' ) ; if ( NULL != cp ) { * cp = ' \0 ' ; } if ( ( sscanf ( buf , " " , type , port ) == 2 ) && ( strcmp ( line , port ) == 0 ) ) { break ; } } if ( ( feof ( fp ) == 0 ) && ( ferror ( fp ) == 0 ) && ( type [ 0 ] != ' \0 ' ) ) { addenv ( " " , type ) ; } ( void ) fclose ( fp ) ; }
ttytype - set ttytype from port to terminal type mapping database
ttytype - set ttytype from port to terminal type mapping database