|
|
< Previous PageNext Page > |
Mac OS X provides a simple parse routine, PE_parse_boot_arg
, for basic boot argument passing. It supports both flags and numerical value assignment. For obtaining values, you write code similar to the following:
unsigned int argval; |
if (PE_parse_boot_arg("argflag", &argval)) { |
/* check for reasonable value */ |
if (argval < 10 || argval > 37) |
argval = 37; |
} else { |
/* use default value */ |
argval = 37; |
} |
Since PE_parse_boot_arg
returns a nonzero value if the flag exists, you can check for the presence of a flag by using a flag that starts with a dash (-) and ignoring the value stored in argvalue
.
The PE_parse_boot_arg
function can also be used to get a string argument. To do this, you must pass in the address of an array of type char
as the second argument. The behavior of PE_parse_boot_arg
is undefined if a string is passed in for a numeric variable or vice versa. Its behavior is also undefined if a string exceeds the storage space allocated. Be sure to allow enough space for the largest reasonable string including a null delimiter. No attempt is made at bounds checking, since an overflow is generally a fatal error and should reasonably prevent booting.
< Previous PageNext Page > |
Last updated: 2006-11-07
|
Get information on Apple products.
Visit the Apple Store online or at retail locations. 1-800-MY-APPLE Copyright © 2007 Apple Inc. All rights reserved. | Terms of use | Privacy Notice |