Mitsubishi Electric QJ71E71-100 User Manual page 414

Q corresponding ethernet interface module
Table of Contents

Advertisement

// System A connect processing
socketnoA = socket(AF_INET, SOCK_STREAM, 0);
if(socketnoA != INVALID_SOCKET) {
hostdataA.sin_family = AF_INET;
hostdataA.sin_port = scA.my_port;
hostdataA.sin_addr.s_addr = scA.my_addr.s_addr;
if(bind(socketnoA, (LPSOCKADDR)&hostdataA, sizeof(hostdataA)) == SOCK_OK) {
} else {
}
} else {
ConnectLastErrorA = ERROR_SOCKET;
}
// System B connect processing
socketnoB = socket(AF_INET, SOCK_STREAM, 0);
if(socketnoB != INVALID_SOCKET) {
hostdataB.sin_family = AF_INET;
hostdataB.sin_port = scB.my_port;
hostdataB.sin_addr.s_addr = scB.my_addr.s_addr;
if(bind(socketnoB, (LPSOCKADDR)&hostdataB, sizeof(hostdataB)) == SOCK_OK) {
(To the next page)
412
qj71e71A.sin_family = AF_INET;
qj71e71A.sin_port = scA.qj_port;
qj71e71A.sin_addr.s_addr = scA.qj_addr.s_addr;
if(connect(socketnoA, (LPSOCKADDR)&qj71e71A, sizeof(qj71e71A)) ==
ShutdownflagA = FLAG_ON;
CloseflagA = FLAG_ON;
// Set to non-blocking mode
ulCmdArgA = 1;
ioctlsocket(socketnoA, FIONBIO, &ulCmdArgA);
} else {
ConnectLastErrorA = ERROR_CONNECT; // Connection establishment failure
}
ConnectLastErrorA = ERROR_BIND;
qj71e71B.sin_family = AF_INET;
qj71e71B.sin_port = scB.qj_port;
qj71e71B.sin_addr.s_addr = scB.qj_addr.s_addr;
// TCP/IP socket (for System A connection) creation
// Bind (System A)
// Connect (Active open: System A)
// Shutdown flag ON
// Connection end flag ON
// Set to non-blocking mode (for System A connection)
// Bind failure
// Socket creation failure
// TCP/IP socket (for System B connection) creation
// Bind (System A)
SOCK_OK) {

Advertisement

Table of Contents
loading

This manual is also suitable for:

Qj71e71-b5Qj71e71-b2

Table of Contents