~ubuntu-branches/ubuntu/feisty/apache2/feisty-security

« back to all changes in this revision

Viewing changes to srclib/apr/include/arch/os2/apr_arch_networkio.h

  • Committer: Bazaar Package Importer
  • Author(s): Andreas Barth
  • Date: 2006-12-09 21:05:45 UTC
  • mfrom: (0.6.1 upstream)
  • Revision ID: james.westby@ubuntu.com-20061209210545-h70s0xaqc2v8vqr2
Tags: 2.2.3-3.2
* Non-maintainer upload.
* 043_ajp_connection_reuse: Patch from upstream Bugzilla, fixing a critical
  issue with regard to connection reuse in mod_proxy_ajp.
  Closes: #396265

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
/* Copyright 2000-2005 The Apache Software Foundation or its licensors, as
 
2
 * applicable.
 
3
 *
 
4
 * Licensed under the Apache License, Version 2.0 (the "License");
 
5
 * you may not use this file except in compliance with the License.
 
6
 * You may obtain a copy of the License at
 
7
 *
 
8
 *     http://www.apache.org/licenses/LICENSE-2.0
 
9
 *
 
10
 * Unless required by applicable law or agreed to in writing, software
 
11
 * distributed under the License is distributed on an "AS IS" BASIS,
 
12
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 
13
 * See the License for the specific language governing permissions and
 
14
 * limitations under the License.
 
15
 */
 
16
 
 
17
#ifndef NETWORK_IO_H
 
18
#define NETWORK_IO_H
 
19
 
 
20
#include "apr_private.h"
 
21
#include "apr_network_io.h"
 
22
#include "apr_general.h"
 
23
#include "apr_arch_os2calls.h"
 
24
#include "apr_poll.h"
 
25
 
 
26
#if APR_HAVE_NETDB_H
 
27
#include <netdb.h>
 
28
#endif
 
29
 
 
30
typedef struct sock_userdata_t sock_userdata_t;
 
31
struct sock_userdata_t {
 
32
    sock_userdata_t *next;
 
33
    const char *key;
 
34
    void *data;
 
35
};
 
36
 
 
37
struct apr_socket_t {
 
38
    apr_pool_t *pool;
 
39
    int socketdes;
 
40
    int type;
 
41
    int protocol;
 
42
    apr_sockaddr_t *local_addr;
 
43
    apr_sockaddr_t *remote_addr;
 
44
    apr_interval_time_t timeout;
 
45
    int nonblock;
 
46
    int local_port_unknown;
 
47
    int local_interface_unknown;
 
48
    int remote_addr_unknown;
 
49
    apr_int32_t options;
 
50
    apr_int32_t inherit;
 
51
    sock_userdata_t *userdata;
 
52
 
 
53
    /* if there is a timeout set, then this pollset is used */
 
54
    apr_pollset_t *pollset;
 
55
};
 
56
 
 
57
/* Error codes returned from sock_errno() */
 
58
#define SOCBASEERR              10000
 
59
#define SOCEPERM                (SOCBASEERR+1)             /* Not owner */
 
60
#define SOCESRCH                (SOCBASEERR+3)             /* No such process */
 
61
#define SOCEINTR                (SOCBASEERR+4)             /* Interrupted system call */
 
62
#define SOCENXIO                (SOCBASEERR+6)             /* No such device or address */
 
63
#define SOCEBADF                (SOCBASEERR+9)             /* Bad file number */
 
64
#define SOCEACCES               (SOCBASEERR+13)            /* Permission denied */
 
65
#define SOCEFAULT               (SOCBASEERR+14)            /* Bad address */
 
66
#define SOCEINVAL               (SOCBASEERR+22)            /* Invalid argument */
 
67
#define SOCEMFILE               (SOCBASEERR+24)            /* Too many open files */
 
68
#define SOCEPIPE                (SOCBASEERR+32)            /* Broken pipe */
 
69
#define SOCEOS2ERR              (SOCBASEERR+100)            /* OS/2 Error */
 
70
 
 
71
const char *apr_inet_ntop(int af, const void *src, char *dst, apr_size_t size);
 
72
int apr_inet_pton(int af, const char *src, void *dst);
 
73
void apr_sockaddr_vars_set(apr_sockaddr_t *, int, apr_port_t);
 
74
 
 
75
#endif  /* ! NETWORK_IO_H */
 
76