Пример #1
0
ARC_STATUS
HalSetEnvironmentVariable (
    IN PCHAR Variable,
    IN PCHAR Value
)

/*++

Routine Description:

    This function creates an environment variable with the specified value.

Arguments:

    Variable - Supplies a pointer to an environment variable name.

    Value - Supplies a pointer to the environment variable value.

Return Value:

    ESUCCESS is returned if the environment variable is created. Otherwise,
    ENOMEM is returned.

NOTES:
    This preliminary implementation always returns ESUCCESS even in case of
    error.

--*/

{

    ARC_STATUS Status;

    Status = ArcSetEnvironmentVariable(Variable, Value);

    switch (Status) {

    case ESUCCESS:
        break;

    case ENOSPC:
        break;	// until further we assume NT can handle that

    case ENOMEM:
    default:
        Status = ENOMEM;
        break;
    }
    return Status;
}
Пример #2
0
VOID
JzMakeEnvironment (
    ULONG BusNumber,
    ULONG Device,
    ULONG DeviceId,
    ULONG DevicePartition
    )

/*++

Routine Description:

    This routine initializes the environment variables.

Arguments:

    None.

Return Value:

    None.

--*/
{
    ARC_STATUS Status;
    CHAR TempString[80];

    switch (Device) {
#ifdef DUO
    case 0:
        sprintf( TempString,
                 "scsi(%1d)disk(%1d)rdisk()partition(%1d)",
                 BusNumber,
                 DeviceId,
                 DevicePartition);
        break;
    case 1:
        sprintf( TempString,
                 "scsi(%1d)disk(%1d)fdisk()",
                 BusNumber,
                 DeviceId);
        break;
    default:
        sprintf( TempString,
                 "scsi(%1d)cdrom(%1d)fdisk()",
                 BusNumber,
                 DeviceId);
        break;
#else
    case 0:
        sprintf( TempString,
                 "scsi()disk(%1d)rdisk()partition(%1d)",
                 DeviceId,
                 DevicePartition);
        break;
    case 1:
        sprintf( TempString,
                 "scsi()disk(%1d)fdisk()",
                 DeviceId);
        break;
    default:
        sprintf( TempString,
                 "scsi()cdrom(%1d)fdisk()",
                 DeviceId);
        break;
#endif // DUO
    }

    Status = ArcSetEnvironmentVariable("CONSOLEIN",
                                       "multi()key()keyboard()console()");

    if (Status != ESUCCESS) {
        goto TestError;
    }

    Status = ArcSetEnvironmentVariable("CONSOLEOUT",
                                       "multi()video()monitor()console()");

    if (Status != ESUCCESS) {
        goto TestError;
    }

    Status = ArcSetEnvironmentVariable("FWSEARCHPATH",
                                       TempString);

    if (Status != ESUCCESS) {
        goto TestError;
    }

    // TEMPTEMP
    Status = ArcSetEnvironmentVariable("SYSTEMPARTITION",
                                       TempString);

    if (Status != ESUCCESS) {
        goto TestError;
    }
    // TEMPTEMP

//    Status = ArcSetEnvironmentVariable("TIMEZONE",
//                                       "PST8PDT");

//    if (Status != ESUCCESS) {
//        goto TestError;
//    }

#ifndef DUO
    Status = ArcSetEnvironmentVariable("A:",
                                       "multi()disk()fdisk()");
#endif // DUO

    if (Status != ESUCCESS) {
        goto TestError;
    }

    return;

TestError:

    JzPrint(JZ_CANT_SET_VARIABLE_MSG);
    return;
}