mirror of
				https://github.com/python/cpython.git
				synced 2025-11-04 03:44:55 +00:00 
			
		
		
		
	MAXPATHLEN-sized buffers for various output-buffers (like to realpath()), and that's correct on BSD platforms, but not Linux (which uses PATH_MAX, and does not define MAXPATHLEN.) Cursory googling suggests Linux is following a newer standard than BSD, but in cases like this, who knows. Using the greater of PATH_MAX and 1024 as a fallback for MAXPATHLEN seems to be the most portable solution.
		
			
				
	
	
		
			55 lines
		
	
	
	
		
			942 B
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			55 lines
		
	
	
	
		
			942 B
		
	
	
	
		
			C
		
	
	
	
	
	
#ifndef Py_OSDEFS_H
 | 
						|
#define Py_OSDEFS_H
 | 
						|
#ifdef __cplusplus
 | 
						|
extern "C" {
 | 
						|
#endif
 | 
						|
 | 
						|
 | 
						|
/* Operating system dependencies */
 | 
						|
 | 
						|
/* Mod by chrish: QNX has WATCOM, but isn't DOS */
 | 
						|
#if !defined(__QNX__)
 | 
						|
#if defined(MS_WINDOWS) || defined(__BORLANDC__) || defined(__WATCOMC__) || defined(__DJGPP__) || defined(PYOS_OS2)
 | 
						|
#if defined(PYOS_OS2) && defined(PYCC_GCC)
 | 
						|
#define MAXPATHLEN 260
 | 
						|
#define SEP '/'
 | 
						|
#define ALTSEP '\\'
 | 
						|
#else
 | 
						|
#define SEP '\\'
 | 
						|
#define ALTSEP '/'
 | 
						|
#define MAXPATHLEN 256
 | 
						|
#endif
 | 
						|
#define DELIM ';'
 | 
						|
#endif
 | 
						|
#endif
 | 
						|
 | 
						|
#ifdef RISCOS
 | 
						|
#define SEP '.'
 | 
						|
#define MAXPATHLEN 256
 | 
						|
#define DELIM ','
 | 
						|
#endif
 | 
						|
 | 
						|
 | 
						|
/* Filename separator */
 | 
						|
#ifndef SEP
 | 
						|
#define SEP '/'
 | 
						|
#endif
 | 
						|
 | 
						|
/* Max pathname length */
 | 
						|
#ifndef MAXPATHLEN
 | 
						|
#if defined(PATH_MAX) && PATH_MAX > 1024
 | 
						|
#define MAXPATHLEN PATH_MAX
 | 
						|
#else
 | 
						|
#define MAXPATHLEN 1024
 | 
						|
#endif
 | 
						|
#endif
 | 
						|
 | 
						|
/* Search path entry delimiter */
 | 
						|
#ifndef DELIM
 | 
						|
#define DELIM ':'
 | 
						|
#endif
 | 
						|
 | 
						|
#ifdef __cplusplus
 | 
						|
}
 | 
						|
#endif
 | 
						|
#endif /* !Py_OSDEFS_H */
 |