aboutsummaryrefslogtreecommitdiffstats
path: root/camel/camel-tcp-stream-ssl.c
diff options
context:
space:
mode:
Diffstat (limited to 'camel/camel-tcp-stream-ssl.c')
-rw-r--r--camel/camel-tcp-stream-ssl.c13
1 files changed, 8 insertions, 5 deletions
diff --git a/camel/camel-tcp-stream-ssl.c b/camel/camel-tcp-stream-ssl.c
index fa0da4041a..bab01e4d4c 100644
--- a/camel/camel-tcp-stream-ssl.c
+++ b/camel/camel-tcp-stream-ssl.c
@@ -366,16 +366,19 @@ static gboolean
ssl_cert_is_saved (const char *certid)
{
char *filename;
- int fd;
+ struct stat st;
+ int ret;
filename = g_strdup_printf ("%s/.camel_certs/%s", getenv ("HOME"), certid);
- fd = open (filename, O_RDONLY);
+ if (stat (filename, &st) == -1) {
+ g_free (filename);
+ return FALSE;
+ }
+
g_free (filename);
- if (fd != -1)
- close (fd);
- return fd != -1;
+ return st.st_uid == getuid ();
}
static SECStatus