aboutsummaryrefslogtreecommitdiffstats
path: root/g10/card-util.c
diff options
context:
space:
mode:
authorWerner Koch <[email protected]>2004-10-13 18:10:06 +0000
committerWerner Koch <[email protected]>2004-10-13 18:10:06 +0000
commit151ca81f1a5a03ae83d9c14ab7748a2d3c09919e (patch)
tree38cc8933051a1e45cd3e95cd8cc66746290f7e31 /g10/card-util.c
parentAdd dearmor.c (diff)
downloadgnupg-151ca81f1a5a03ae83d9c14ab7748a2d3c09919e.tar.gz
gnupg-151ca81f1a5a03ae83d9c14ab7748a2d3c09919e.zip
Added SELInux hacks and did some cleanups.
Diffstat (limited to '')
-rw-r--r--g10/card-util.c11
1 files changed, 9 insertions, 2 deletions
diff --git a/g10/card-util.c b/g10/card-util.c
index 8f638c930..1d2e47ea2 100644
--- a/g10/card-util.c
+++ b/g10/card-util.c
@@ -577,17 +577,24 @@ change_login (const char *args)
for (args++; spacep (args); args++)
;
fp = fopen (args, "rb");
+ if (fp && is_secured_file (fileno (fp)))
+ {
+ fclose (fp);
+ fp = NULL;
+ errno = EPERM;
+ }
if (!fp)
{
- tty_printf ("can't open `%s': %s\n", args, strerror (errno));
+ tty_printf (_("can't open `%s': %s\n"), args, strerror (errno));
return -1;
}
+
data = xmalloc (254);
n = fread (data, 1, 254, fp);
fclose (fp);
if (n < 0)
{
- tty_printf ("error reading `%s': %s\n", args, strerror (errno));
+ tty_printf (_("error reading `%s': %s\n"), args, strerror (errno));
xfree (data);
return -1;
}