Print this page
OS-4251 lxbrand want lx_init for less boot-time overrides
Reviewed by: Jerry Jelinek <jerry.jelinek@joyent.com>
OS-4254 libbrand token substitution incomplete for mount entries
@@ -815,10 +815,11 @@
const char *, const char *), void *data, const xmlChar *mount_type)
{
xmlNodePtr node;
xmlChar *special, *dir, *type, *opt;
char special_exp[MAXPATHLEN];
+ char dir_exp[MAXPATHLEN];
char opt_exp[MAXPATHLEN];
int ret;
if ((node = xmlDocGetRootElement(bhp->bh_platform)) == NULL)
return (-1);
@@ -841,10 +842,14 @@
/* Substitute token values as needed. */
if ((ret = i_substitute_tokens((char *)special,
special_exp, sizeof (special_exp),
zonename, zonepath, NULL, NULL)) != 0)
goto next;
+ if ((ret = i_substitute_tokens((char *)dir,
+ dir_exp, sizeof (dir_exp),
+ zonename, zonepath, NULL, NULL)) != 0)
+ goto next;
/* opt might not be defined */
if (strlen((const char *)opt) == 0) {
xmlFree(opt);
opt = NULL;
@@ -853,11 +858,11 @@
opt_exp, sizeof (opt_exp),
zonename, zonepath, NULL, NULL)) != 0)
goto next;
}
- ret = func(data, (char *)special_exp, (char *)dir,
+ ret = func(data, (char *)special_exp, (char *)dir_exp,
(char *)type, ((opt != NULL) ? opt_exp : NULL));
next:
if (special != NULL)
xmlFree(special);