1/* This testcase is part of GDB, the GNU debugger. 2 3 Copyright 2008-2020 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#define _GNU_SOURCE 19#include <unistd.h> 20#include <sys/uio.h> 21 22void 23marker1 (void) 24{ 25} 26 27void 28marker2 (void) 29{ 30} 31 32int fds[2] = { -1, -1 }; 33char buf[5]; 34const struct iovec v[4] = { 35 { &buf[1], 1 }, 36 { &buf[0], 1 }, 37 { &buf[3], 1 }, 38 { &buf[2], 1 }, 39}; 40 41int 42main (void) 43{ 44 marker1 (); 45 pipe (fds); 46 write (fds[1], "UNIX", 4); 47 readv (fds[0], v, 4); 48 marker2 (); 49 return 0; 50} 51