* gnu/packages/patches/reptyr-fix-gcc-7.patch: New file. * gnu/local.mk (dist_patch_DATA): Add new patch. * gnu/packages/screen.scm (reptyr): Use patch.
		
			
				
	
	
		
			38 lines
		
	
	
	
		
			1.3 KiB
		
	
	
	
		
			Diff
		
	
	
	
	
	
			
		
		
	
	
			38 lines
		
	
	
	
		
			1.3 KiB
		
	
	
	
		
			Diff
		
	
	
	
	
	
| This patch allows reptyr to build with gcc 7. It is taken from reptyr mainline patches
 | |
| fa0d63f and b45fd92.
 | |
| 
 | |
| https://github.com/nelhage/reptyr/commit/fa0d63ff8c488be15976e5353580b565e85586a1
 | |
| https://github.com/nelhage/reptyr/commit/b45fd9238958fcf2d8f3d6fc23e6d491febea2ac
 | |
| 
 | |
| Patch by Nelson Elhage <nelhage@nelhage.com>.
 | |
| 
 | |
| diff --git a/attach.c b/attach.c
 | |
| index bd8ef8c..8d9cbf8 100644
 | |
| --- a/attach.c
 | |
| +++ b/attach.c
 | |
| @@ -389,8 +389,11 @@ int setup_steal_socket(struct steal_pty_state *steal) {
 | |
|          return errno;
 | |
|  
 | |
|      steal->addr_un.sun_family = AF_UNIX;
 | |
| -    snprintf(steal->addr_un.sun_path, sizeof(steal->addr_un.sun_path),
 | |
| -             "%s/reptyr.sock", steal->tmpdir);
 | |
| +    if (snprintf(steal->addr_un.sun_path, sizeof(steal->addr_un.sun_path),
 | |
| +                 "%s/reptyr.sock", steal->tmpdir) >= sizeof(steal->addr_un.sun_path)) {
 | |
| +        error("tmpdir path too long!");
 | |
| +        return ENAMETOOLONG;
 | |
| +    }
 | |
|  
 | |
|      if ((steal->sockfd = socket(AF_UNIX, SOCK_DGRAM, 0)) < 0)
 | |
|          return errno;
 | |
| diff --git a/platform/linux/linux.h b/platform/linux/linux.h
 | |
| index 9e6b78a..3ec5a99 100644
 | |
| --- a/platform/linux/linux.h
 | |
| +++ b/platform/linux/linux.h
 | |
| @@ -40,6 +40,7 @@
 | |
|  #include <sys/ptrace.h>
 | |
|  #include <asm/ptrace.h>
 | |
|  #include <sys/types.h>
 | |
| +#include <sys/sysmacros.h>
 | |
|  #include <sys/user.h>
 | |
|  #include <unistd.h>
 | |
|  #include <stdlib.h>
 |