HP Rp7410 BSD Sockets Interface Programmer's Guide - Page 178

Porting Issues for Other Functions and, Library Calls Typically Used by IPC

Page 178 highlights

Programming Hints Portability Issues FIONREAD Return Values For HP-UX systems, the FIONREAD ioctl request on a datagram socket returns a number that may be larger than the number of bytes actually readable. Previously, HP-UX systems returned the maximum number of bytes that a subsequent recv would be able to return. Listen's Backlog Parameter HP-UX sets the actual size of the queue for pending connections to 3/ 2*B+1, where B is the backlog value specified in the listen() function. This may change in future releases, but it will not be smaller than the backlog value. Pending Connections There is no guarantee which pending connection on a listening socket is returned by accept. HP-UX systems return the newest pending connection. Applications should be written such that they do not depend upon connections being returned by accept on a first-come, first-served basis. Porting Issues for Other Functions and Library Calls Typically Used by IPC The following is a list of differences in functions and library calls to watch out for when you port your IPC applications between HP-UX and 4.3 BSD systems. Ioctl and Fcntl Calls 4.3 BSD terminal ioctl calls are incompatible with the HP-UX implementation. These calls are typically used in virtual terminal applications. The HP-UX implementation uses UNIX System V compatible calls. Pty Location Look for the pty masters in /dev/ptym/ptyp? and for the pty slaves in /dev/pty/ttyp?. An alternative location to check is /dev. 178 Chapter 8

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36
  • 37
  • 38
  • 39
  • 40
  • 41
  • 42
  • 43
  • 44
  • 45
  • 46
  • 47
  • 48
  • 49
  • 50
  • 51
  • 52
  • 53
  • 54
  • 55
  • 56
  • 57
  • 58
  • 59
  • 60
  • 61
  • 62
  • 63
  • 64
  • 65
  • 66
  • 67
  • 68
  • 69
  • 70
  • 71
  • 72
  • 73
  • 74
  • 75
  • 76
  • 77
  • 78
  • 79
  • 80
  • 81
  • 82
  • 83
  • 84
  • 85
  • 86
  • 87
  • 88
  • 89
  • 90
  • 91
  • 92
  • 93
  • 94
  • 95
  • 96
  • 97
  • 98
  • 99
  • 100
  • 101
  • 102
  • 103
  • 104
  • 105
  • 106
  • 107
  • 108
  • 109
  • 110
  • 111
  • 112
  • 113
  • 114
  • 115
  • 116
  • 117
  • 118
  • 119
  • 120
  • 121
  • 122
  • 123
  • 124
  • 125
  • 126
  • 127
  • 128
  • 129
  • 130
  • 131
  • 132
  • 133
  • 134
  • 135
  • 136
  • 137
  • 138
  • 139
  • 140
  • 141
  • 142
  • 143
  • 144
  • 145
  • 146
  • 147
  • 148
  • 149
  • 150
  • 151
  • 152
  • 153
  • 154
  • 155
  • 156
  • 157
  • 158
  • 159
  • 160
  • 161
  • 162
  • 163
  • 164
  • 165
  • 166
  • 167
  • 168
  • 169
  • 170
  • 171
  • 172
  • 173
  • 174
  • 175
  • 176
  • 177
  • 178
  • 179
  • 180
  • 181
  • 182
  • 183
  • 184
  • 185
  • 186
  • 187
  • 188
  • 189
  • 190
  • 191
  • 192
  • 193
  • 194
  • 195
  • 196

178
Chapter 8
Programming Hints
Portability Issues
FIONREAD Return Values
For HP-UX systems, the FIONREAD
ioctl
request on a datagram
socket returns a number that may be larger than the number of bytes
actually readable. Previously, HP-UX systems returned the maximum
number of
bytes that a subsequent
recv
would be able to return.
Listen's Backlog Parameter
HP-UX sets the actual size of the queue for pending connections to
3/
2*B+1
, where B is the
backlog
value specified in the
listen()
function. This may change in future releases, but it will not be smaller
than the
backlog
value.
Pending Connections
There is no guarantee which pending connection on a listening socket is
returned
by
accept
. HP-UX systems return the newest pending
connection. Applications should be written such that they do not depend
upon connections being returned by
accept
on a first-come, first-served
basis.
Porting Issues for Other Functions and
Library Calls Typically Used by IPC
The following is a list of differences in functions and library calls to
watch out for when you port your IPC applications between HP-UX and
4.3 BSD systems.
Ioctl and Fcntl Calls
4.3 BSD terminal
ioctl
calls are incompatible with the HP-UX
implementation. These calls are typically used in virtual terminal
applications. The HP-UX implementation uses UNIX System V
compatible calls.
Pty Location
Look for the
pty
masters in
/dev/ptym/ptyp?
and for the
pty
slaves in
/dev/pty/ttyp?
. An alternative location to check is
/dev
.