util: make env checking more generic

Change the "env_check_mdmon" function to be more generic, accepting
and environment variable name, as soon we will have a new use for it.

Signed-off-by: NeilBrown <neilb@suse.de>
This commit is contained in:
NeilBrown 2008-11-04 10:35:43 +11:00
parent c30e53693e
commit 40ebbb9cfe
4 changed files with 6 additions and 17 deletions

View File

@ -809,7 +809,7 @@ extern int open_container(int fd);
extern int mdmon_running(int devnum);
extern int signal_mdmon(int devnum);
extern int env_no_mdmon(void);
extern int check_env(char *name);
extern int start_mdmon(int devnum);
extern char *devnum2devname(int num);

View File

@ -241,7 +241,7 @@ static void wake_me(int sig)
static int do_fork(void)
{
#ifdef DEBUG
if (env_no_mdmon())
if (check_env("MDADM_NO_MDMON"))
return 0;
#endif

View File

@ -213,17 +213,6 @@ struct imsm_update_add_disk {
enum imsm_update_type type;
};
static int imsm_env_devname_as_serial(void)
{
char *val = getenv("IMSM_DEVNAME_AS_SERIAL");
if (val && atoi(val) == 1)
return 1;
return 0;
}
static struct supertype *match_metadata_desc_imsm(char *arg)
{
struct supertype *st;
@ -1017,7 +1006,7 @@ static int imsm_read_serial(int fd, char *devname,
rv = scsi_get_serial(fd, scsi_serial, sizeof(scsi_serial));
if (rv && imsm_env_devname_as_serial()) {
if (rv && check_env("IMSM_DEVNAME_AS_SERIAL")) {
memset(serial, 0, MAX_RAID_SERIAL_LEN);
fd2devname(fd, (char *) serial);
return 0;

6
util.c
View File

@ -1209,7 +1209,7 @@ int start_mdmon(int devnum)
NULL
};
if (env_no_mdmon())
if (check_env("MDADM_NO_MDMON"))
return 0;
len = readlink("/proc/self/exe", pathbuf, sizeof(pathbuf));
@ -1248,9 +1248,9 @@ int start_mdmon(int devnum)
return 0;
}
int env_no_mdmon(void)
int check_env(char *name)
{
char *val = getenv("MDADM_NO_MDMON");
char *val = getenv(name);
if (val && atoi(val) == 1)
return 1;