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

Preparing Address Variables

Page 31 highlights

Using Internet Stream Sockets Preparing Address Variables Preparing Address Variables Before you create a connection, establish the correct variables and collect the information that you need to request a connection. Your server process needs to: • Declare socket address variables. • Assign a wildcard address. • Get the port address of the service that you want to provide. Your client process needs to: • Declare socket address variables. • Get the remote host's internet address. • Get the port address for the service that you want to use. These activities are described next. Refer to the program example at the end of this chapter to see how these activities work together. Declaring Socket Address Variables You need to declare a variable of type struct sockaddr_in to use for socket addresses. For example, the following declarations are used in the example client program: struct sockaddr_in myaddr; /* for local socket address */ struct sockaddr_in peeraddr; /* for peer socket address */ sockaddr_in is a special case of sockaddr and is used with the AF_INET addressing domain. Both types are shown in this chapter, but sockaddr_in makes it easier to manipulate the internet and port addresses. Some of the BSD Sockets system calls are declared using a pointer to sockaddr, but you can also use a pointer to sockaddr_in. The sockaddr_in address structure consists of the following fields: Chapter 2 31

  • 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

Chapter 2
31
Using Internet Stream Sockets
Preparing Address Variables
Preparing Address Variables
Before you create a connection, establish the correct variables and collect
the information that you need to request a connection.
Your server process needs to:
Declare socket address variables.
Assign a wildcard address.
Get the port address of the service that you want to provide.
Your client process needs to:
Declare socket address variables.
Get the remote host's internet address.
Get the port address for the service that you want to use.
These activities are described next. Refer to the program example at the
end of this chapter to see how these activities work together.
Declaring Socket Address Variables
You need to declare a variable of type struct
sockaddr_in
to use for
socket addresses. For example, the following declarations are used in the
example client program:
struct sockaddr_in myaddr; /* for local socket address
*/
struct sockaddr_in peeraddr; /* for peer socket address
*/
sockaddr_in
is a special case of
sockaddr
and is used with the
AF_INET addressing domain. Both types are shown in this chapter, but
sockaddr_in
makes it easier to manipulate the internet and port
addresses. Some of the BSD Sockets system calls are declared using a
pointer to
sockaddr
, but you can also use a pointer to
sockaddr_in
.
The
sockaddr_in
address structure consists of the following fields: