- * xscreensaver, Copyright (c) 1993-1997, 1998, 2000, 2003
- * Jamie Zawinski <jwz@jwz.org>
+ * xscreensaver, Copyright (c) 1993-2004 Jamie Zawinski <jwz@jwz.org>
*
* Permission to use, copy, modify, distribute, and sell this software and its
* documentation for any purpose is hereby granted without fee, provided that
*
* Permission to use, copy, modify, distribute, and sell this software and its
* documentation for any purpose is hereby granted without fee, provided that
/* I'm not sure if this is exactly the right test...
Might __APPLE__ be defined if this is apple hardware, but not
/* I'm not sure if this is exactly the right test...
Might __APPLE__ be defined if this is apple hardware, but not
/* temporarily switch to a new ticketfile.
I'm not using tmpnam() because it isn't entirely portable.
/* temporarily switch to a new ticketfile.
I'm not using tmpnam() because it isn't entirely portable.
newtkfile = malloc(80 * sizeof(char));
memset(newtkfile, 0, sizeof(newtkfile));
newtkfile = malloc(80 * sizeof(char));
memset(newtkfile, 0, sizeof(newtkfile));
- sprintf(newtkfile, "/tmp/xscrn-%i", getpid());
+ sprintf(newtkfile, "/tmp/xscrn-%i.XXXXXX", getpid());
+
+ if( (fh = mkstemp(newtkfile)) < 0)
+ {
+ free(newtkfile);
+ return(False);
+ }
+ if( fchmod(fh, 0600) < 0)
+ {
+ free(newtkfile);
+ return(False);
+ }
+
krb_set_tkt_string(tk_file);
free(newtkfile);
memset(mitkey, 0, sizeof(mitkey));
krb_set_tkt_string(tk_file);
free(newtkfile);
memset(mitkey, 0, sizeof(mitkey));