MCPcopy Create free account
hub / github.com/data61/MP-SPDZ / start_networking

Method start_networking

Networking/Server.cpp:162–192  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

160}
161
162Server* Server::start_networking(Names& N, int my_num, int nplayers,
163 string hostname, int portnum, int my_port)
164{
165 if (OnlineOptions::singleton.has_option("debug_networking"))
166 cerr << "Starting networking for " << my_num << "/" << nplayers
167 << " with server on " << hostname << ":" << (portnum) << endl;
168
169 if (my_num < 0 or my_num >= nplayers)
170 {
171 cerr << "Player number " << my_num << " outside range: 0-"
172 << nplayers - 1 << endl;
173 exit(1);
174 }
175
176 Server* server = 0;
177 pthread_t thread;
178 if (my_num == 0)
179 {
180 pthread_create(&thread, 0, Server::start_in_thread,
181 server = new Server(nplayers, portnum));
182 bool default_port = my_port == Names::DEFAULT_PORT or my_port == portnum;
183 N.init(my_num, portnum, my_port, hostname.c_str(), not default_port);
184 pthread_join(thread, 0);
185 if (default_port)
186 N.set_server(server->get_socket());
187 delete server;
188 }
189 else
190 N.init(my_num, portnum, my_port, hostname.c_str());
191 return 0;
192}
193
194ServerSocket* Server::get_socket()
195{

Callers 5

NamesMethod · 0.45
runMethod · 0.45
mainFunction · 0.45
SharePartyMethod · 0.45
YaoPlayerMethod · 0.45

Calls 4

has_optionMethod · 0.80
set_serverMethod · 0.80
initMethod · 0.45
get_socketMethod · 0.45

Tested by

no test coverage detected