drop support for proprietary UNIX variants
Proprietary UNIX variants like AIX, HP-UX or SCO UNIX are nowadays rarely used and maintaining compatibility to non-standard operating systems interfaces is wasteful and practically useless. Projects like xterm suffer from backward compatibility to decades-old UNIX variants and terminal standards. This does not conform to st's design goals.
This commit is contained in:
		
							parent
							
								
									375efb8891
								
							
						
					
					
						commit
						e2ac1676b1
					
				
							
								
								
									
										18
									
								
								std.c
									
									
									
									
									
								
							
							
						
						
									
										18
									
								
								std.c
									
									
									
									
									
								
							| @ -107,45 +107,31 @@ getpty(void) { | |||||||
| 	ptm = getpt(); | 	ptm = getpt(); | ||||||
| #elif _POSIX_C_SOURCE >= 200112L || _XOPEN_SOURCE >= 600 | #elif _POSIX_C_SOURCE >= 200112L || _XOPEN_SOURCE >= 600 | ||||||
| 	ptm = posix_openpt(O_RDWR); | 	ptm = posix_openpt(O_RDWR); | ||||||
| #elif defined(__sgi) |  | ||||||
| 	ttydev = _getpty(&ptm, O_RDWR, 0622, 0); |  | ||||||
| #elif defined(_AIX) |  | ||||||
| 	ptm = open("/dev/ptc", O_RDWR); |  | ||||||
| #else | #else | ||||||
| 	ptm = open("/dev/ptmx", O_RDWR); | 	ptm = open("/dev/ptmx", O_RDWR); | ||||||
| #if defined(__hpux) |  | ||||||
| 	if(ptm == -1) |  | ||||||
| 		ptm = open("/dev/ptym/clone", O_RDWR); |  | ||||||
| #endif |  | ||||||
| 	if(ptm == -1) { | 	if(ptm == -1) { | ||||||
| 		if(openpty(&ptm, &pts, NULL, NULL, NULL) == -1) | 		if(openpty(&ptm, &pts, NULL, NULL, NULL) == -1) | ||||||
| 			eprintn("error, cannot open pty"); | 			eprintn("error, cannot open pty"); | ||||||
| 		return; | 		return; | ||||||
| 	} | 	} | ||||||
| #endif | #endif | ||||||
|  | #if defined(_XOPEN_SOURCE) | ||||||
| 	if(ptm != -1) { | 	if(ptm != -1) { | ||||||
| #if defined(_XOPEN_SOURCE) || !defined(__sgi) || !defined(_AIX) |  | ||||||
| 		if(grantpt(ptm) == -1) | 		if(grantpt(ptm) == -1) | ||||||
| 			eprintn("error, cannot grant access to pty"); | 			eprintn("error, cannot grant access to pty"); | ||||||
| 		if(unlockpt(ptm) == -1) | 		if(unlockpt(ptm) == -1) | ||||||
| 			eprintn("error, cannot unlock pty"); | 			eprintn("error, cannot unlock pty"); | ||||||
| 		ptsdev = ptsname(ptm); | 		ptsdev = ptsname(ptm); | ||||||
| #elif defined(_AIX) |  | ||||||
| 		ptsdev = ttyname(ptm); |  | ||||||
| #endif |  | ||||||
| 		if(!ptsdev) | 		if(!ptsdev) | ||||||
| 			eprintn("error, slave pty name undefined"); | 			eprintn("error, slave pty name undefined"); | ||||||
| 		pts = open(ptsdev, O_RDWR); | 		pts = open(ptsdev, O_RDWR); | ||||||
| 		if(pts == -1) | 		if(pts == -1) | ||||||
| 			eprintn("error, cannot open slave pty"); | 			eprintn("error, cannot open slave pty"); | ||||||
| 		puts(ptsdev); | 		puts(ptsdev); | ||||||
| #if defined(__hpux) || defined(sun) || defined(__sun) |  | ||||||
| 		ioctl(pts, I_PUSH, "ptem"); |  | ||||||
| 		ioctl(pts, I_PUSH, "ldterm"); |  | ||||||
| #endif |  | ||||||
| 	} | 	} | ||||||
| 	else | 	else | ||||||
| 		eprintn("error, cannot open pty"); | 		eprintn("error, cannot open pty"); | ||||||
|  | #endif | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| void | void | ||||||
|  | |||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user
	 Matthias-Christian Ott
						Matthias-Christian Ott