- (dtucker) [session.c] Fix bus errors on some 64-bit Solaris configurations.
Based on patches by Matthias Koeppe and Thomas Baden. ok djm@
diff --git a/session.c b/session.c
index 647be40..ccdc424 100644
--- a/session.c
+++ b/session.c
@@ -906,7 +906,7 @@
{
char **tmpenv = NULL, *var;
u_int i, tmpenvsize = 0;
- mode_t mask;
+ u_long mask;
/*
* We don't want to copy the whole file to the child's environment,
@@ -927,7 +927,7 @@
if ((var = child_get_env(tmpenv, "UMASK")) != NULL)
if (sscanf(var, "%5lo", &mask) == 1)
- umask(mask);
+ umask((mode_t)mask);
for (i = 0; tmpenv[i] != NULL; i++)
xfree(tmpenv[i]);