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

Using Internet Datagram Sockets, Advanced Topics for Internet Datagram Sockets

Page 7 highlights

Contents 4. Using Internet Datagram Sockets Overview 86 Preparing Address Variables 88 Declaring Socket Address Variables 88 Getting the Remote Host's Network Address 89 Getting the Port Address for the Desired Service 90 Using a Wildcard Local Address 91 Writing the Server and Client Processes 92 Creating Sockets 92 Binding Socket Addresses to Datagram Sockets 93 Sending and Receiving Messages 95 Sending Messages 95 Receiving Messages 96 Flag Options 98 Closing a Socket 100 Example Using Datagram Sockets 101 5. Advanced Topics for Internet Datagram Sockets SO_BROADCAST Socket Option 111 Specifying a Default Socket Address 112 When to Specify a Default Socket Address 113 Synchronous I/O Multiplexing with Select 114 Sending and Receiving Data Asynchronously 115 Sending and Receiving IP Multicast Datagrams 116 Sending IP Multicast Datagrams 116 Receiving IP Multicast Datagrams 118 Nonblocking I/O 121 7

  • 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

Contents
7
4.
Using Internet Datagram Sockets
Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .86
Preparing Address Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .88
Declaring Socket Address Variables . . . . . . . . . . . . . . . . . . . . . . . . . . .88
Getting the Remote Host's Network Address . . . . . . . . . . . . . . . . . . . .89
Getting the Port Address for the Desired Service . . . . . . . . . . . . . . . .90
Using a Wildcard Local Address . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .91
Writing the Server and Client Processes . . . . . . . . . . . . . . . . . . . . . . . . .92
Creating Sockets. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .92
Binding Socket Addresses to Datagram Sockets . . . . . . . . . . . . . . . . .93
Sending and Receiving Messages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .95
Sending Messages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .95
Receiving Messages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .96
Flag Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .98
Closing a Socket. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .100
Example Using Datagram Sockets . . . . . . . . . . . . . . . . . . . . . . . . . . . . .101
5.
Advanced Topics for Internet Datagram Sockets
SO_BROADCAST Socket Option . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .111
Specifying a Default Socket Address . . . . . . . . . . . . . . . . . . . . . . . . . . .112
When to Specify a Default Socket Address . . . . . . . . . . . . . . . . . . . . .113
Synchronous I/O Multiplexing with Select. . . . . . . . . . . . . . . . . . . . . . .114
Sending and Receiving Data Asynchronously . . . . . . . . . . . . . . . . . . . .115
Sending and Receiving IP Multicast Datagrams. . . . . . . . . . . . . . . . . .116
Sending IP Multicast Datagrams . . . . . . . . . . . . . . . . . . . . . . . . . . . .116
Receiving IP Multicast Datagrams . . . . . . . . . . . . . . . . . . . . . . . . . . .118
Nonblocking I/O . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .121