Page 912 - 3-3
P. 912

len = sizeof(" 외출중");
                     stat = new char[len];
                     strncpy(stat, " 외출중", len); break;
                 case MESSAGE::STATUS::BUSINESSTRIP:
                     len = sizeof(" 출장중");
                     stat = new char[len];
                     strncpy(stat, " 출장중", len); break;
                 case MESSAGE::STATUS::OFFWORK:
                     len = sizeof(" 퇴근");
                     stat = new char[len];
                     strncpy(stat, " 퇴근", len); break;
                 default:
                     len = sizeof("Unknown");
                     stat = new char[len];
                     strcpy(stat, "Unknown"); break;
                 }


                 return stat;
             }


             void Handler::ProcNewConn() {
                 char type = 0;
                 try { Server->accept(); }
                 catch (TcpServerSock::Exception &e) {
                     std::cerr << std::endl;
                     std::cerr << "Error occured in ProcNewConn()" << std::endl;
                     e.What();
                     std::cerr << std::endl;
                     return;
                 }
                 try { Server->recv(&type, sizeof(type)); }
                 catch (TcpServerSock::Exception &e) {
                     std::cerr << std::endl;
                     std::cerr << "Error occured in ProcNewConn()" << std::endl;
                     e.What();
                     std::cerr << std::endl;


                     close(Server->GetClientFD());
                     return;
                 }


                 SOCKET ClientSocket = Server->GetClientFD();
                 FD_SET(ClientSocket, &ori_reads);
                 if (ClientSocket > maxfd)
                     maxfd = ClientSocket;


                                                        - 912 -
   907   908   909   910   911   912   913   914   915   916   917