diff options
Diffstat (limited to 'ext/Fcntl')
-rw-r--r-- | ext/Fcntl/Fcntl.pm | 4 | ||||
-rw-r--r-- | ext/Fcntl/Fcntl.xs | 24 |
2 files changed, 25 insertions, 3 deletions
diff --git a/ext/Fcntl/Fcntl.pm b/ext/Fcntl/Fcntl.pm index f1edb8ed79..00f834d223 100644 --- a/ext/Fcntl/Fcntl.pm +++ b/ext/Fcntl/Fcntl.pm @@ -58,13 +58,16 @@ $VERSION = "1.03"; F_GETFD F_GETFL F_GETLK + F_GETLK64 F_GETOWN F_POSIX F_RDLCK F_SETFD F_SETFL F_SETLK + F_SETLK64 F_SETLKW + F_SETLKW64 F_SETOWN F_SHLCK F_UNLCK @@ -78,6 +81,7 @@ $VERSION = "1.03"; O_DSYNC O_EXCL O_EXLOCK + O_LARGEFILE O_NDELAY O_NOCTTY O_NONBLOCK diff --git a/ext/Fcntl/Fcntl.xs b/ext/Fcntl/Fcntl.xs index 5149444b68..a8e0e8ac63 100644 --- a/ext/Fcntl/Fcntl.xs +++ b/ext/Fcntl/Fcntl.xs @@ -72,6 +72,12 @@ constant(char *name, int arg) #else goto not_there; #endif + if (strEQ(name, "F_GETLK64")) +#ifdef F_GETLK64 + return F_GETLK64; +#else + goto not_there; +#endif if (strEQ(name, "F_GETOWN")) #ifdef F_GETOWN return F_GETOWN; @@ -102,9 +108,9 @@ constant(char *name, int arg) #else goto not_there; #endif - if (strEQ(name, "F_SETLK")) -#ifdef F_SETLK - return F_SETLK; + if (strEQ(name, "F_SETLK64")) +#ifdef F_SETLK64 + return F_SETLK64; #else goto not_there; #endif @@ -114,6 +120,12 @@ constant(char *name, int arg) #else goto not_there; #endif + if (strEQ(name, "F_SETLKW64")) +#ifdef F_SETLKW64 + return F_SETLKW64; +#else + goto not_there; +#endif if (strEQ(name, "F_SETOWN")) #ifdef F_SETOWN return F_SETOWN; @@ -289,6 +301,12 @@ constant(char *name, int arg) #else goto not_there; #endif + if (strEQ(name, "O_LARGEFILE")) +#ifdef O_LARGEFILE + return O_LARGEFILE; +#else + goto not_there; +#endif if (strEQ(name, "O_NDELAY")) #ifdef O_NDELAY return O_NDELAY; |