maint: update copyright
[gnulib.git] / tests / test-nonblocking-pipe.h
1 /* Test for nonblocking read and write.
2
3    Copyright (C) 2011-2014 Free Software Foundation, Inc.
4
5    This program is free software: you can redistribute it and/or modify
6    it under the terms of the GNU General Public License as published by
7    the Free Software Foundation; either version 3 of the License, or
8    (at your option) any later version.
9
10    This program is distributed in the hope that it will be useful,
11    but WITHOUT ANY WARRANTY; without even the implied warranty of
12    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
13    GNU General Public License for more details.
14
15    You should have received a copy of the GNU General Public License
16    along with this program.  If not, see <http://www.gnu.org/licenses/>.  */
17
18 /* A data block ought to be larger than the size of the in-kernel buffer.
19    Working values of PIPE_DATA_BLOCK_SIZE, depending on kernel:
20
21      Platform                        PIPE_DATA_BLOCK_SIZE
22
23      Linux                           >= 63489
24      Linux/SPARC                     >= 126977
25      Linux/IA-64, Linux/MIPS         >= 253953
26      Linux/PPC64                     >= 1048576
27      FreeBSD, OpenBSD, Mac OS X      >= 65537
28      AIX                             >= 32769
29      HP-UX                           >= 8193
30      IRIX                            >= 10241
31      OSF/1                           >= 262145
32      Solaris <= 7                    >= 10241
33      Solaris >= 8                    >= 20481
34      Cygwin                          >= 65537
35      native Windows                  >= 4097 (depends on the _pipe argument)
36  */
37 #if defined __osf__ || (defined __linux__ && (defined __ia64__ || defined __mips__))
38 # define PIPE_DATA_BLOCK_SIZE 270000
39 #elif defined __linux__ && defined __sparc__
40 # define PIPE_DATA_BLOCK_SIZE 140000
41 #elif defined __linux__ && defined __powerpc__
42 # define PIPE_DATA_BLOCK_SIZE 1100000
43 #else
44 # define PIPE_DATA_BLOCK_SIZE 70000
45 #endif