The error occurs everywhere in comm.c where 'ssize_t' is followed by 'perform_socket_read' (missing ','?) is found. The exact lines and some code around them are as follows. /* functions in this file */ RETSIGTYPE reread_wizlists(int sig); RETSIGTYPE unrestrict_game(int sig); RETSIGTYPE reap(int sig); RETSIGTYPE checkpointing(int sig); RETSIGTYPE hupsig(int sig); ---->(121) ssize_t perform_socket_read(socket_t desc, char *read_point,size_t space_left); ---->(122) ssize_t perform_socket_write(socket_t desc, const char *txt,size_t length); void echo_off(struct descriptor_data *d); void echo_on(struct descriptor_data *d); And then again here: ---->(1405) ssize_t perform_socket_write(socket_t desc, const char *txt, size_t length) { ssize_t result; result = send(desc, txt, length, 0); if (result > 0) { /* Write was sucessful */ return result; } if (result == 0) { /* This should never happen! */ log("SYSERR: Huh?? write() returned 0??? Please report this!"); return -1; } /* result < 0: An error was encountered. */ /* Transient error? */ if (WSAGetLastError() == WSAEWOULDBLOCK) return 0; /* Must be a fatal error. */ return -1; ---->(1430) } And here: /* * Same information about perform_socket_write applies here. I like * standards, there are so many of them. -gg 6/30/98 */ ---->(1529) ssize_t perform_socket_read(socket_t desc, char *read_point, size_t space_left) { ssize_t ret; #if defined(CIRCLE_ACORN) ret = recv(desc, read_point, space_left, MSG_DONTWAIT); #elif defined(CIRCLE_WINDOWS) ret = recv(desc, read_point, space_left, 0); #else ret = read(desc, read_point, space_left); #endif /* Read was successful. */ if (ret > 0) return ret; /* read() returned 0, meaning we got an EOF. */ if (ret == 0) { log("EOF on socket read (connection broken by peer)"); return -1; } /* * read returned a value < 0: there was an error */ #if defined(CIRCLE_WINDOWS) /* Windows */ if (WSAGetLastError() == WSAEWOULDBLOCK) return 0; #else #ifdef EINTR /* Interrupted system call - various platforms */ if (errno == EINTR) return 0; #endif #ifdef EAGAIN /* POSIX */ if (errno == EAGAIN) return 0; #endif #ifdef EWOULDBLOCK /* BSD */ if (errno == EWOULDBLOCK) return 0; #endif /* EWOULDBLOCK */ #ifdef EDEADLK /* Macintosh */ if (errno == EDEADLK) return 0; #endif #endif /* CIRCLE_WINDOWS */ /* We don't know what happened, cut them off. */ perror("process_input: about to lose connection"); ---->(1585) return -1; } The 4 lines that contain ssize_t perform_socket_read(socket_t desc, char *read_point,size_t space_left); and ssize_t perform_socket_write(socket_t desc, const char *txt,size_t length); have the same error. The other 2 lines, 1430 and 1585 are syntax error : '}'. Sorry for not giving the code before. Tina +------------------------------------------------------------+ | Ensure that you have read the CircleMUD Mailing List FAQ: | | http://qsilver.queensu.ca/~fletchra/Circle/list-faq.html | +------------------------------------------------------------+
This archive was generated by hypermail 2b30 : 12/15/00 PST