~ubuntu-branches/ubuntu/maverick/libvirt/maverick

« back to all changes in this revision

Viewing changes to gnulib/lib/sys_ioctl.in.h

  • Committer: Bazaar Package Importer
  • Author(s): Soren Hansen
  • Date: 2009-02-11 01:01:42 UTC
  • mto: (3.4.1 sid) (1.2.1 upstream) (0.2.1 upstream)
  • mto: This revision was merged to the branch mainline in revision 34.
  • Revision ID: james.westby@ubuntu.com-20090211010142-wk9mgtbw8bmp3zcb
Tags: upstream-0.6.0
ImportĀ upstreamĀ versionĀ 0.6.0

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
/* Substitute for and wrapper around <sys/ioctl.h>.
 
2
   Copyright (C) 2008 Free Software Foundation, Inc.
 
3
 
 
4
   This program is free software; you can redistribute it and/or modify
 
5
   it under the terms of the GNU Lesser General Public License as published by
 
6
   the Free Software Foundation; either version 2.1, or (at your option)
 
7
   any later version.
 
8
 
 
9
   This program is distributed in the hope that it will be useful,
 
10
   but WITHOUT ANY WARRANTY; without even the implied warranty of
 
11
   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 
12
   GNU Lesser General Public License for more details.
 
13
 
 
14
   You should have received a copy of the GNU Lesser General Public License
 
15
   along with this program; if not, write to the Free Software Foundation,
 
16
   Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.  */
 
17
 
 
18
#ifndef _GL_SYS_IOCTL_H
 
19
 
 
20
#if __GNUC__ >= 3
 
21
@PRAGMA_SYSTEM_HEADER@
 
22
#endif
 
23
 
 
24
/* The include_next requires a split double-inclusion guard.  */
 
25
#if @HAVE_SYS_IOCTL_H@
 
26
# @INCLUDE_NEXT@ @NEXT_SYS_IOCTL_H@
 
27
#endif
 
28
 
 
29
#ifndef _GL_SYS_IOCTL_H
 
30
#define _GL_SYS_IOCTL_H
 
31
 
 
32
/* AIX 5.1 and Solaris 10 declare ioctl() in <unistd.h> and in <stropts.h>,
 
33
   but not in <sys/ioctl.h>.  */
 
34
#include <unistd.h>
 
35
 
 
36
/* The definition of GL_LINK_WARNING is copied here.  */
 
37
 
 
38
 
 
39
/* Declare overridden functions.  */
 
40
 
 
41
#ifdef __cplusplus
 
42
extern "C" {
 
43
#endif
 
44
 
 
45
 
 
46
#if @GNULIB_IOCTL@
 
47
# if @SYS_IOCTL_H_HAVE_WINSOCK2_H@
 
48
#  undef ioctl
 
49
#  define ioctl rpl_ioctl
 
50
extern int ioctl (int fd, int request, ... /* {void *,char *} arg */);
 
51
# endif
 
52
#elif @SYS_IOCTL_H_HAVE_WINSOCK2_H@
 
53
# undef ioctl
 
54
# define ioctl ioctl_used_without_requesting_gnulib_module_ioctl
 
55
#elif defined GNULIB_POSIXCHECK
 
56
# undef ioctl
 
57
# define ioctl(f,c,a) \
 
58
    (GL_LINK_WARNING ("ioctl does not portably work on sockets - " \
 
59
                      "use gnulib module ioctl for portability"), \
 
60
     ioctl (f, c, a))
 
61
#endif
 
62
 
 
63
 
 
64
#ifdef __cplusplus
 
65
}
 
66
#endif
 
67
 
 
68
 
 
69
#endif /* _GL_SYS_IOCTL_H */
 
70
#endif /* _GL_SYS_IOCTL_H */