|  | @ -9,6 +9,7 @@ | 
			
		
	
		
		
			
				
					|  |  | #include <stdio.h> |  |  | #include <stdio.h> | 
			
		
	
		
		
			
				
					|  |  | #include <stdlib.h> |  |  | #include <stdlib.h> | 
			
		
	
		
		
			
				
					|  |  | #include <pwd.h> |  |  | #include <pwd.h> | 
			
		
	
		
		
			
				
					|  |  |  |  |  | #include <sys/types.h> | 
			
		
	
		
		
			
				
					|  |  | #include <string.h> |  |  | #include <string.h> | 
			
		
	
		
		
			
				
					|  |  | #include <unistd.h> |  |  | #include <unistd.h> | 
			
		
	
		
		
			
				
					|  |  | #include <stdbool.h> |  |  | #include <stdbool.h> | 
			
		
	
	
		
		
			
				
					|  | @ -659,18 +660,8 @@ static void raise_loop(xcb_window_t window) { | 
			
		
	
		
		
			
				
					|  |  |     } |  |  |     } | 
			
		
	
		
		
			
				
					|  |  | } |  |  | } | 
			
		
	
		
		
			
				
					|  |  | 
 |  |  | 
 | 
			
		
	
		
		
			
				
					|  |  | char* whoami(void) { |  |  |  | 
			
		
	
		
		
			
				
					|  |  |     uid_t uid = geteuid(); |  |  |  | 
			
		
	
		
		
			
				
					|  |  |     struct passwd *pw = getpwuid(uid); |  |  |  | 
			
		
	
		
		
			
				
					|  |  |     if (pw) { |  |  |  | 
			
		
	
		
		
			
				
					|  |  |         return pw->pw_name; |  |  |  | 
			
		
	
		
		
			
				
					|  |  |      } else { |  |  |  | 
			
		
	
		
		
			
				
					|  |  |         errx(EXIT_FAILURE, "Username not known!\n"); |  |  |  | 
			
		
	
		
		
			
				
					|  |  |      } |  |  |  | 
			
		
	
		
		
			
				
					|  |  | } |  |  |  | 
			
		
	
		
		
			
				
					|  |  | 
 |  |  |  | 
			
		
	
		
		
			
				
					|  |  | int main(int argc, char *argv[]) { |  |  | int main(int argc, char *argv[]) { | 
			
		
	
		
		
			
				
					
					|  |  |     char *username = whoami(); |  |  |     char *username = getpwuid(getuid())->pw_name; | 
			
				
				
			
		
	
		
		
	
		
		
			
				
					|  |  |     char *image_path = NULL; |  |  |     char *image_path = NULL; | 
			
		
	
		
		
			
				
					|  |  |     int ret; |  |  |     int ret; | 
			
		
	
		
		
			
				
					|  |  |     struct pam_conv conv = {conv_callback, NULL}; |  |  |     struct pam_conv conv = {conv_callback, NULL}; | 
			
		
	
	
		
		
			
				
					|  | @ -695,6 +686,9 @@ int main(int argc, char *argv[]) { | 
			
		
	
		
		
			
				
					|  |  |         {NULL, no_argument, NULL, 0} |  |  |         {NULL, no_argument, NULL, 0} | 
			
		
	
		
		
			
				
					|  |  |     }; |  |  |     }; | 
			
		
	
		
		
			
				
					|  |  | 
 |  |  | 
 | 
			
		
	
		
		
			
				
					|  |  |  |  |  |     if (username == NULL) | 
			
		
	
		
		
			
				
					|  |  |  |  |  |         err(EXIT_FAILURE, "getpwuid() failed"); | 
			
		
	
		
		
			
				
					|  |  |  |  |  | 
 | 
			
		
	
		
		
			
				
					|  |  |     char *optstring = "hvnbdc:p:ui:teI:f"; |  |  |     char *optstring = "hvnbdc:p:ui:teI:f"; | 
			
		
	
		
		
			
				
					|  |  |     while ((o = getopt_long(argc, argv, optstring, longopts, &optind)) != -1) { |  |  |     while ((o = getopt_long(argc, argv, optstring, longopts, &optind)) != -1) { | 
			
		
	
		
		
			
				
					|  |  |         switch (o) { |  |  |         switch (o) { | 
			
		
	
	
		
		
			
				
					|  | 
 |