Support Solaris 9 sendfile
This commit is contained in:
parent
1748073c1e
commit
7ddce27f49
2
TODO
2
TODO
@ -7,6 +7,7 @@ http://msdn.microsoft.com/library/default.asp?url=/library/en-us/fileio/base/cre
|
|||||||
|
|
||||||
http://www.sysinternals.com/ntw2k/info/comport.shtml
|
http://www.sysinternals.com/ntw2k/info/comport.shtml
|
||||||
|
|
||||||
|
http://msdn.microsoft.com/msdnmag/issues/1000/winsock/default.aspx
|
||||||
|
|
||||||
|
|
||||||
Solaris 9: http://docs.sun.com/db/doc/816-5218/6mbcj7nrr?q=sendfile&a=view
|
Solaris 9: http://docs.sun.com/db/doc/816-5218/6mbcj7nrr?q=sendfile&a=view
|
||||||
@ -14,3 +15,4 @@ Solaris 9: http://docs.sun.com/db/doc/816-5218/6mbcj7nrr?q=sendfile&a=view
|
|||||||
HP-UX: http://docs.hp.com/hpux/onlinedocs/B9106-90009/00/01/168-con.html
|
HP-UX: http://docs.hp.com/hpux/onlinedocs/B9106-90009/00/01/168-con.html
|
||||||
|
|
||||||
AIX: http://publib16.boulder.ibm.com/pseries/en_US/libs/commtrf2/send_file.htm
|
AIX: http://publib16.boulder.ibm.com/pseries/en_US/libs/commtrf2/send_file.htm
|
||||||
|
|
||||||
|
@ -1,3 +1,3 @@
|
|||||||
#if defined(__linux__) || defined(_SGI_SOURCE) || defined(__hpux__)
|
#if defined(__linux__) || defined(_SGI_SOURCE) || defined(__hpux__) || defined(__sun__)
|
||||||
#include <alloca.h>
|
#include <alloca.h>
|
||||||
#endif
|
#endif
|
||||||
|
@ -53,6 +53,19 @@ int64 io_sendfile(int64 s,int64 fd,uint64 off,uint64 n) {
|
|||||||
int64 io_sendfile(int64 out,int64 in,uint64 off,uint64 bytes) {
|
int64 io_sendfile(int64 out,int64 in,uint64 off,uint64 bytes) {
|
||||||
return sendfile64(out,in,off,bytes,0,0);
|
return sendfile64(out,in,off,bytes,0,0);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#elif defined (__sun__) && defined(__svr4__)
|
||||||
|
|
||||||
|
#define _LARGEFILE64_SOURCE
|
||||||
|
#include <sys/types.h>
|
||||||
|
#include <sys/socket.h>
|
||||||
|
#include <sys/sendfile.h>
|
||||||
|
|
||||||
|
int64 io_sendfile(int64 out,int64 in,uint64 off,uint64 bytes) {
|
||||||
|
off64_t o=off;
|
||||||
|
return sendfile64(out,in,&o,bytes);
|
||||||
|
}
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#else
|
#else
|
||||||
|
@ -19,6 +19,17 @@ int main() {
|
|||||||
x, 0);
|
x, 0);
|
||||||
perror("sendfile");
|
perror("sendfile");
|
||||||
}
|
}
|
||||||
|
#elif defined (__sun__) && defined(__svr4__)
|
||||||
|
#include <sys/types.h>
|
||||||
|
#include <sys/socket.h>
|
||||||
|
#include <sys/sendfile.h>
|
||||||
|
|
||||||
|
int main() {
|
||||||
|
off_t o;
|
||||||
|
o=0;
|
||||||
|
sendfile(1 /* dest */, 0 /* src */,&o,23 /* nbytes */);
|
||||||
|
perror("sendfile");
|
||||||
|
}
|
||||||
#else
|
#else
|
||||||
#error unsupported architecture
|
#error unsupported architecture
|
||||||
#endif
|
#endif
|
||||||
|
Loading…
x
Reference in New Issue
Block a user