Changeset 19846
- Timestamp:
- 03/02/07 11:52:27 (2 years ago)
- Files:
-
- juggler/trunk/modules/vapor/ChangeLog (modified) (1 diff)
- juggler/trunk/modules/vapor/VERSION (modified) (1 diff)
- juggler/trunk/modules/vapor/test/SerialPort/first.cpp (modified) (3 diffs)
- juggler/trunk/modules/vapor/test/SerialPort/reader.cpp (modified) (2 diffs)
- juggler/trunk/modules/vapor/test/SerialPort/second.cpp (modified) (2 diffs)
- juggler/trunk/modules/vapor/test/SerialPort/writer.cpp (modified) (2 diffs)
- juggler/trunk/modules/vapor/test/Socket/tcp_client.cpp (modified) (2 diffs)
- juggler/trunk/modules/vapor/test/Socket/tcp_server.cpp (modified) (1 diff)
- juggler/trunk/modules/vapor/test/Socket/udp_client.cpp (modified) (1 diff)
- juggler/trunk/modules/vapor/test/Socket/udp_server.cpp (modified) (3 diffs)
- juggler/trunk/modules/vapor/test/TestSuite/TestCases/IO/Port/SerialPortTest.cpp (modified) (12 diffs)
- juggler/trunk/modules/vapor/test/TestSuite/TestCases/IO/SelectorTest.cpp (modified) (4 diffs)
- juggler/trunk/modules/vapor/test/TestSuite/TestCases/Socket/NonBlockingSocketsTest.cpp (modified) (8 diffs)
- juggler/trunk/modules/vapor/test/TestSuite/TestCases/Socket/SocketConnectorAcceptorTest.cpp (modified) (2 diffs)
- juggler/trunk/modules/vapor/test/TestSuite/TestCases/Socket/SocketCopyConstructorTest.cpp (modified) (2 diffs)
- juggler/trunk/modules/vapor/test/TestSuite/TestCases/Socket/SocketTest.cpp (modified) (18 diffs)
- juggler/trunk/modules/vapor/vpr/IO/BlockIO.cpp (modified) (1 diff)
- juggler/trunk/modules/vapor/vpr/IO/BlockIO.h (modified) (31 diffs)
- juggler/trunk/modules/vapor/vpr/IO/Port/SerialPort_t.h (modified) (14 diffs)
- juggler/trunk/modules/vapor/vpr/IO/Socket/SocketBasicOpt.h (modified) (8 diffs)
- juggler/trunk/modules/vapor/vpr/IO/Socket/SocketDatagramOpt.h (modified) (3 diffs)
- juggler/trunk/modules/vapor/vpr/IO/Socket/SocketDatagram_t.h (modified) (6 diffs)
- juggler/trunk/modules/vapor/vpr/IO/Socket/SocketIpOpt.h (modified) (2 diffs)
- juggler/trunk/modules/vapor/vpr/IO/Socket/SocketStreamOpt.h (modified) (2 diffs)
- juggler/trunk/modules/vapor/vpr/IO/Socket/Socket_t.h (modified) (24 diffs)
- juggler/trunk/modules/vapor/vpr/IO/Stats/BaseIOStatsStrategy.cpp (modified) (3 diffs)
- juggler/trunk/modules/vapor/vpr/md/NSPR/IO/Socket/SocketDatagramImplNSPR.cpp (modified) (5 diffs)
- juggler/trunk/modules/vapor/vpr/md/NSPR/IO/Socket/SocketDatagramImplNSPR.h (modified) (2 diffs)
- juggler/trunk/modules/vapor/vpr/md/NSPR/IO/Socket/SocketImplNSPR.cpp (modified) (6 diffs)
- juggler/trunk/modules/vapor/vpr/md/NSPR/IO/Socket/SocketImplNSPR.h (modified) (6 diffs)
- juggler/trunk/modules/vapor/vpr/md/POSIX/IO/FileHandleImplUNIX.cpp (modified) (13 diffs)
- juggler/trunk/modules/vapor/vpr/md/POSIX/IO/FileHandleImplUNIX.h (modified) (7 diffs)
- juggler/trunk/modules/vapor/vpr/md/POSIX/IO/Port/SerialPortImplTermios.cpp (modified) (8 diffs)
- juggler/trunk/modules/vapor/vpr/md/POSIX/IO/Port/SerialPortImplTermios.h (modified) (14 diffs)
- juggler/trunk/modules/vapor/vpr/md/POSIX/IO/Socket/SocketDatagramImplBSD.cpp (modified) (7 diffs)
- juggler/trunk/modules/vapor/vpr/md/POSIX/IO/Socket/SocketDatagramImplBSD.h (modified) (2 diffs)
- juggler/trunk/modules/vapor/vpr/md/POSIX/IO/Socket/SocketImplBSD.cpp (modified) (5 diffs)
- juggler/trunk/modules/vapor/vpr/md/POSIX/IO/Socket/SocketImplBSD.h (modified) (6 diffs)
- juggler/trunk/modules/vapor/vpr/md/SIM/IO/Socket/SocketDatagramImplSIM.cpp (modified) (3 diffs)
- juggler/trunk/modules/vapor/vpr/md/SIM/IO/Socket/SocketDatagramImplSIM.h (modified) (1 diff)
- juggler/trunk/modules/vapor/vpr/md/SIM/IO/Socket/SocketImplSIM.cpp (modified) (9 diffs)
- juggler/trunk/modules/vapor/vpr/md/SIM/IO/Socket/SocketImplSIM.h (modified) (6 diffs)
- juggler/trunk/modules/vapor/vpr/md/WIN32/IO/Port/SerialPortImplWin32.cpp (modified) (17 diffs)
- juggler/trunk/modules/vapor/vpr/md/WIN32/IO/Port/SerialPortImplWin32.h (modified) (11 diffs)
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
juggler/trunk/modules/vapor/ChangeLog
r19810 r19846 1 1 DATE AUTHOR CHANGE 2 2 ---------- -------- ----------------------------------------------------------- 3 2007-03-02 patrick Changed the signature of the read, write, and query methods 4 on I/O classes (vpr::BlockIO, vpr::Socket, 5 vpr::SocketStream, vpr::SocketDatagram, and 6 vpr::SerialPort) to return the result "out the back" 7 instead of through a by-reference parameter. 8 NEW VERSION: 1.1.42 3 9 2007-02-13 patrick Use the Win32 thread and sychronization APIs directly 4 10 instead of using NSPR. juggler/trunk/modules/vapor/VERSION
r19810 r19846 1 1.1.42-0 @03/02/2007 17:55:00 UTC@ 1 2 1.1.41-0 @02/13/2007 23:15:00 UTC@ 2 3 1.1.40-0 @02/13/2007 21:40:00 UTC@ juggler/trunk/modules/vapor/test/SerialPort/first.cpp
r19729 r19846 56 56 port->open(); 57 57 char read_buffer[10], write_buffer[10]; 58 vpr::Uint32 bytes;59 58 int val; 60 59 … … 69 68 { 70 69 memset((void*) &read_buffer, '\0', sizeof(read_buffer)); 71 port->read(read_buffer, sizeof(read_buffer) , bytes);70 port->read(read_buffer, sizeof(read_buffer)); 72 71 std::cerr << "Read '" << read_buffer << "'\n"; 73 72 … … 77 76 memset((void*) &write_buffer, '\0', sizeof(write_buffer)); 78 77 sprintf(write_buffer, "%d", val); 79 port->write(write_buffer, strlen(write_buffer) + 1, bytes); 80 std::cerr << "Wrote '" << write_buffer << "' (" << bytes << " bytes)\n"; 78 const vpr::Uint32 bytes = port->write(write_buffer, 79 strlen(write_buffer) + 1); 80 std::cerr << "Wrote '" << write_buffer << "' (" << bytes 81 << " bytes)\n"; 81 82 } 82 83 } juggler/trunk/modules/vapor/test/SerialPort/reader.cpp
r19729 r19846 52 52 read_port->open(); 53 53 char buffer[80]; 54 vpr::Uint32 bytes;55 54 56 55 std::cout << "Port opened\n"; … … 62 61 read_port->setCanonicalInput(false); 63 62 //read_port->flushQueue(vpr::SerialTypes::INPUT_QUEUE); 64 read_port->read(buffer, sizeof(buffer) , bytes);63 read_port->read(buffer, sizeof(buffer)); 65 64 std::cout << "Read '" << buffer << "'" << std::endl; 66 65 } juggler/trunk/modules/vapor/test/SerialPort/second.cpp
r19729 r19846 57 57 char read_buffer[10], write_buffer[10]; 58 58 int val; 59 vpr::Uint32 bytes;60 59 61 60 std::cerr << "Port opened\n"; … … 71 70 memset((void*) &write_buffer, '\0', sizeof(write_buffer)); 72 71 sprintf(write_buffer, "%d", val); 73 port->write(write_buffer, strlen(write_buffer) + 1, bytes); 72 const vpr::Uint32 bytes = port->write(write_buffer, 73 strlen(write_buffer) + 1); 74 74 std::cerr << "Wrote '" << write_buffer << "' (" << bytes 75 75 << " bytes)\n"; 76 76 77 77 memset((void*) &read_buffer, '\0', sizeof(read_buffer)); 78 port->read(read_buffer, sizeof(read_buffer) , bytes);78 port->read(read_buffer, sizeof(read_buffer)); 79 79 std::cerr << "Read '" << read_buffer << "'\n"; 80 80 juggler/trunk/modules/vapor/test/SerialPort/writer.cpp
r19729 r19846 59 59 write_port->open(); 60 60 char buffer[] = "This is a test..."; 61 vpr::Uint32 bytes;62 61 vpr::Uint16 size; 63 62 … … 72 71 write_port->setCharacterSize(vpr::SerialTypes::CS_BITS_8); 73 72 std::cout << "Pre Write memleak :" << memleak << std::endl; 74 write_port->write(buffer, sizeof(char) * (strlen(buffer) + 1), bytes); 73 const vpr::Uint32 bytes = 74 write_port->write(buffer, sizeof(char) * (strlen(buffer) + 1)); 75 75 std::cout << std::flush; 76 76 std::cout << "Post Write memleak :" << memleak << std::endl; juggler/trunk/modules/vapor/test/Socket/tcp_client.cpp
r19729 r19846 82 82 { 83 83 char buffer[40]; 84 vpr::Uint32 bytes; 85 sock.read(buffer, 40, bytes, 86 vpr::Interval(5, vpr::Interval::Sec)); 84 const vpr::Uint32 bytes = 85 sock.read(buffer, 40, vpr::Interval(5, vpr::Interval::Sec)); 87 86 88 87 // If we read anything, print it. … … 91 90 std::cout << "Read " << bytes << " bytes from server\n" 92 91 << " Got '" << buffer << "'" << std::endl; 93 }94 else if ( bytes == -1 )95 {96 std::cout << "Error reading!" << std::endl;97 92 } 98 93 else juggler/trunk/modules/vapor/test/Socket/tcp_server.cpp
r19729 r19846 78 78 // Using the new socket, send the buffer to the client and close 79 79 // the socket. 80 vpr::Uint32 bytes; 81 client_sock.write(buffer, sizeof(buffer), bytes); 82 // client_sock.write(buffer, buffer.length(), bytes); 80 client_sock.write(buffer, sizeof(buffer)); 81 // client_sock.write(buffer, buffer.length()); 83 82 client_sock.close(); 84 83 } juggler/trunk/modules/vapor/test/Socket/udp_client.cpp
r19729 r19846 65 65 66 66 char buffer[40]; 67 vpr::Uint32 bytes;68 69 67 memset(buffer, '\0', sizeof(buffer)); 70 68 strcpy(buffer, "Hi, I'm a client"); 71 69 72 70 // Write to the server. 73 sock.write(buffer, 40 , bytes);71 sock.write(buffer, 40); 74 72 75 73 // Read from the server. 76 sock.read(buffer, 40, bytes);74 const vpr::Uint32 bytes = sock.read(buffer, 40); 77 75 78 76 // If the server reasponded, print the result. juggler/trunk/modules/vapor/test/Socket/udp_server.cpp
r19729 r19846 68 68 char recv_buf[32]; 69 69 char send_buf[] = "Hello there!"; 70 vpr::Uint32 bytes;71 70 72 71 // Loop forever reading messages from clients. … … 78 77 { 79 78 // Read a message from a client. 80 sock.recvfrom(recv_buf, sizeof(recv_buf), addr, bytes); 79 const vpr::Uint32 bytes = sock.recvfrom(recv_buf, sizeof(recv_buf), 80 addr); 81 81 82 82 // If we read anything, print it and send a response. … … 85 85 << std::endl; 86 86 87 sock.sendto(send_buf, sizeof(send_buf), addr , bytes);87 sock.sendto(send_buf, sizeof(send_buf), addr); 88 88 } 89 89 catch (vpr::IOException& ex) juggler/trunk/modules/vapor/test/TestSuite/TestCases/IO/Port/SerialPortTest.cpp
r19550 r19846 193 193 194 194 CPPUNIT_ASSERT_NO_THROW_MESSAGE("Port opening failed", port.open()); 195 CPPUNIT_ASSERT_NO_THROW_MESSAGE("Buffer size query failed", port.getMinInputSize(buf_size)); 195 CPPUNIT_ASSERT_NO_THROW_MESSAGE("Buffer size query failed", 196 buf_size = port.getMinInputSize()); 196 197 197 198 buf_size++; 198 CPPUNIT_ASSERT_NO_THROW_MESSAGE("Buffer size update failed", port.setMinInputSize(buf_size)); 199 200 port.getMinInputSize(buf_size_new); 199 CPPUNIT_ASSERT_NO_THROW_MESSAGE("Buffer size update failed", 200 port.setMinInputSize(buf_size)); 201 202 buf_size_new = port.getMinInputSize(); 201 203 CPPUNIT_ASSERT(buf_size == buf_size_new && "Buffer size update failed"); 202 204 … … 207 209 { 208 210 vpr::SerialPort port(mSendPortName); 209 vpr::Uint8 timeout, timeout_new; 210 211 CPPUNIT_ASSERT_NO_THROW_MESSAGE("Port opening failed", port.open()); 212 CPPUNIT_ASSERT_NO_THROW_MESSAGE("Timeout query failed", port.getTimeout(timeout)); 211 vpr::Uint8 timeout; 212 213 CPPUNIT_ASSERT_NO_THROW_MESSAGE("Port opening failed", port.open()); 214 CPPUNIT_ASSERT_NO_THROW_MESSAGE("Timeout query failed", 215 timeout = port.getTimeout()); 213 216 214 217 timeout++; 215 CPPUNIT_ASSERT_NO_THROW_MESSAGE("Timeout update failed", port.setTimeout(timeout)); 216 217 port.getTimeout(timeout_new); 218 CPPUNIT_ASSERT_NO_THROW_MESSAGE("Timeout update failed", 219 port.setTimeout(timeout)); 220 221 const vpr::Uint8 timeout_new = port.getTimeout(); 218 222 CPPUNIT_ASSERT(timeout == timeout_new && "Timeout update failed"); 219 223 … … 227 231 228 232 CPPUNIT_ASSERT_NO_THROW_MESSAGE("Port opening failed", port.open()); 229 CPPUNIT_ASSERT_NO_THROW_MESSAGE("Character size query failed", port.getCharacterSize(orig_size)); 233 CPPUNIT_ASSERT_NO_THROW_MESSAGE("Character size query failed", 234 orig_size = port.getCharacterSize()); 230 235 231 236 new_size = (orig_size == vpr::SerialTypes::CS_BITS_8) ? vpr::SerialTypes::CS_BITS_7 232 237 : vpr::SerialTypes::CS_BITS_8; 233 238 234 CPPUNIT_ASSERT_NO_THROW_MESSAGE("Character size update failed", port.setCharacterSize(new_size)); 235 236 port.getCharacterSize(mod_size); 239 CPPUNIT_ASSERT_NO_THROW_MESSAGE("Character size update failed", 240 port.setCharacterSize(new_size)); 241 242 mod_size = port.getCharacterSize(); 237 243 CPPUNIT_ASSERT(new_size == mod_size && "Character size update failed"); 238 244 239 CPPUNIT_ASSERT_NO_THROW_MESSAGE("Character size reset failed", port.setCharacterSize(orig_size)); 245 CPPUNIT_ASSERT_NO_THROW_MESSAGE("Character size reset failed", 246 port.setCharacterSize(orig_size)); 240 247 241 248 CPPUNIT_ASSERT_NO_THROW_MESSAGE("Port closing failed", port.close()); … … 268 275 269 276 CPPUNIT_ASSERT_NO_THROW_MESSAGE("Port opening failed", port.open()); 270 CPPUNIT_ASSERT_NO_THROW_MESSAGE("Stop bits query failed", port.getStopBits(orig_bits)); 277 CPPUNIT_ASSERT_NO_THROW_MESSAGE("Stop bits query failed", 278 orig_bits = port.getStopBits()); 271 279 272 280 CPPUNIT_ASSERT((orig_bits == 1 || orig_bits == 2) && "Invalid stop bit setting read"); … … 274 282 new_bits = (orig_bits == 1) ? 2 : 1; 275 283 276 CPPUNIT_ASSERT_NO_THROW_MESSAGE("Stop bits update failed", port.setStopBits(new_bits)); 277 278 port.getStopBits(mod_bits); 284 CPPUNIT_ASSERT_NO_THROW_MESSAGE("Stop bits update failed", 285 port.setStopBits(new_bits)); 286 287 mod_bits = port.getStopBits(); 279 288 CPPUNIT_ASSERT(new_bits == mod_bits && "Stop bits update failed"); 280 289 281 CPPUNIT_ASSERT_NO_THROW_MESSAGE("Stop bits reset failed", port.setStopBits(orig_bits)); 290 CPPUNIT_ASSERT_NO_THROW_MESSAGE("Stop bits reset failed", 291 port.setStopBits(orig_bits)); 282 292 283 293 CPPUNIT_ASSERT_NO_THROW_MESSAGE("Port closing failed", port.close()); … … 467 477 { 468 478 vpr::SerialPort port(mSendPortName); 469 vpr::Uint32 orig_baud, mod_baud; 470 471 CPPUNIT_ASSERT_NO_THROW_MESSAGE("Port opening failed", port.open()); 472 473 CPPUNIT_ASSERT_NO_THROW_MESSAGE("Failed to query input baud rate", port.getInputBaudRate(orig_baud)); 479 vpr::Uint32 orig_baud; 480 481 CPPUNIT_ASSERT_NO_THROW_MESSAGE("Port opening failed", port.open()); 482 483 CPPUNIT_ASSERT_NO_THROW_MESSAGE("Failed to query input baud rate", 484 orig_baud = port.getInputBaudRate()); 474 485 475 486 for ( std::vector<vpr::Uint32>::iterator i = mBaudRates.begin(); … … 477 488 ++i ) 478 489 { 479 CPPUNIT_ASSERT_NO_THROW_MESSAGE("Failed to set new baud rate", port.setInputBaudRate(*i)); 480 port.getInputBaudRate(mod_baud); 490 CPPUNIT_ASSERT_NO_THROW_MESSAGE("Failed to set new baud rate", 491 port.setInputBaudRate(*i)); 492 const vpr::Uint32 mod_baud = port.getInputBaudRate(); 481 493 CPPUNIT_ASSERT(mod_baud == *i && "Failed to set new baud rate"); 482 494 } 483 495 484 CPPUNIT_ASSERT_NO_THROW_MESSAGE("Failed to reset input baud rate", port.setInputBaudRate(orig_baud)); 496 CPPUNIT_ASSERT_NO_THROW_MESSAGE("Failed to reset input baud rate", 497 port.setInputBaudRate(orig_baud)); 485 498 486 499 CPPUNIT_ASSERT_NO_THROW_MESSAGE("Port closing failed", port.close()); … … 490 503 { 491 504 vpr::SerialPort port(mSendPortName); 492 vpr::Uint32 orig_baud, mod_baud; 493 494 CPPUNIT_ASSERT_NO_THROW_MESSAGE("Port opening failed", port.open()); 495 496 CPPUNIT_ASSERT_NO_THROW_MESSAGE("Failed to query output baud rate", port.getOutputBaudRate(orig_baud)); 505 vpr::Uint32 orig_baud; 506 507 CPPUNIT_ASSERT_NO_THROW_MESSAGE("Port opening failed", port.open()); 508 509 CPPUNIT_ASSERT_NO_THROW_MESSAGE("Failed to query output baud rate", 510 orig_baud = port.getOutputBaudRate()); 497 511 498 512 for ( std::vector<vpr::Uint32>::iterator i = mBaudRates.begin(); … … 501 515 { 502 516 CPPUNIT_ASSERT_NO_THROW_MESSAGE("Failed to set new baud rate", port.setOutputBaudRate(*i)); 503 port.getOutputBaudRate(mod_baud);517 const vpr::Uint32 mod_baud = port.getOutputBaudRate(); 504 518 CPPUNIT_ASSERT(mod_baud == *i && "Failed to set new baud rate"); 505 519 } … … 572 586 { 573 587 std::string buffer; 574 vpr::Uint32 bytes_read = 0;575 576 588 CPPUNIT_ASSERT_NO_THROW_MESSAGE("Failed to change character size", recv_port.setCharacterSize(vpr::SerialTypes::CS_BITS_8)); 577 589 … … 590 602 591 603 CPPUNIT_ASSERT_NO_THROW_MESSAGE("Failed to read from serial port", 592 recv_port.read(buffer, mDataBuffer.size(), bytes_read,vpr::Interval(2, vpr::Interval::Sec)));604 recv_port.read(buffer, mDataBuffer.size(), vpr::Interval(2, vpr::Interval::Sec))); 593 605 CPPUNIT_ASSERT(mDataBuffer == buffer && "Read wrong string"); 594 606 … … 638 650 mCondVar.release(); 639 651 640 CPPUNIT_ASSERT_NO_THROW_MESSAGE("Failed to write", send_port.write(mDataBuffer, mDataBuffer.size(), bytes_written));652 CPPUNIT_ASSERT_NO_THROW_MESSAGE("Failed to write", bytes_written = send_port.write(mDataBuffer, mDataBuffer.size())); 641 653 CPPUNIT_ASSERT(mDataBuffer.size() == bytes_written && "Failed to write all bytes"); 642 654 juggler/trunk/modules/vapor/test/TestSuite/TestCases/IO/SelectorTest.cpp
r19550 r19846 142 142 // use the sock to write (send)... then close it... 143 143 // Send a message 144 CPPUNIT_ASSERT_NO_THROW_MESSAGE("Problem writing in acceptor", sock.write(mMessageValue, mMessageLen, bytes_written));144 CPPUNIT_ASSERT_NO_THROW_MESSAGE("Problem writing in acceptor", bytes_written = sock.write(mMessageValue, mMessageLen)); 145 145 // Close the socket 146 146 CPPUNIT_ASSERT_NO_THROW_MESSAGE("Problem closing accepted socket", sock.close()); … … 189 189 190 190 // Recieve data 191 CPPUNIT_ASSERT_NO_THROW_MESSAGE("Failure reading data", con_sock.read(data, mMessageLen, bytes_read));191 CPPUNIT_ASSERT_NO_THROW_MESSAGE("Failure reading data", bytes_read = con_sock.read(data, mMessageLen)); 192 192 CPPUNIT_ASSERT((bytes_read == mMessageLen) && "Connector recieved message of wrong size" ); 193 193 … … 322 322 vpr::Uint32 bytes_read; 323 323 324 CPPUNIT_ASSERT_NO_THROW_MESSAGE("Problems reading data", socks[s_idx].read(data, mMessageLen, bytes_read));324 CPPUNIT_ASSERT_NO_THROW_MESSAGE("Problems reading data", bytes_read = socks[s_idx].read(data, mMessageLen)); 325 325 CPPUNIT_ASSERT((bytes_read == mMessageLen) && "Data recieved is of wrong length"); 326 326 } … … 465 465 CPPUNIT_ASSERT((mSelectedPorts[j] < sockets.size())); // Make sure we are in range 466 466 // Write the data 467 CPPUNIT_ASSERT_NO_THROW_MESSAGE("Error writing data on socket", sockets[mSelectedPorts[j]].write(mMessageValue, mMessageLen, bytes_written));467 CPPUNIT_ASSERT_NO_THROW_MESSAGE("Error writing data on socket", bytes_written = sockets[mSelectedPorts[j]].write(mMessageValue, mMessageLen)); 468 468 CPPUNIT_ASSERT((mMessageLen == bytes_written) && "Wrong num bytes written"); 469 469 } juggler/trunk/modules/vapor/test/TestSuite/TestCases/Socket/NonBlockingSocketsTest.cpp
r19176 r19846 156 156 void NonBlockingSocketTest::testNonBlockingTransfer_acceptor() 157 157 { 158 vpr::Uint32 bytes_written;159 158 vpr::SocketAcceptor acceptor; 160 159 vpr::SocketStream client_sock; … … 206 205 207 206 CPPUNIT_ASSERT_NO_THROW_MESSAGE("Failed to send message to client", 208 client_sock.send(mMessage, mMessageLen , bytes_written));207 client_sock.send(mMessage, mMessageLen)); 209 208 210 209 mCondVar.acquire(); … … 265 264 try 266 265 { 267 con_sock.recv(data, mMessageLen, bytes_read);266 bytes_read = con_sock.recv(data, mMessageLen); 268 267 } 269 268 catch (vpr::WouldBlockException& ex) … … 370 369 // s: write... 371 370 std::string message = "Hi Maynard, My leg hurts"; 372 vpr::Uint32 bytes_written;373 371 CPPUNIT_ASSERT_NO_THROW_MESSAGE( "Problem writing in acceptor", 374 spawned_socket.write( message, message.size() , bytes_written));372 spawned_socket.write( message, message.size() )); 375 373 376 374 // s: write the max size... 377 375 size_t size; 378 376 CPPUNIT_ASSERT_NO_THROW_MESSAGE( "couldn't get the max size for sending data with socket", 379 s pawned_socket.getSendBufferSize( size));377 size = spawned_socket.getSendBufferSize()); 380 378 message.resize( size ); 381 379 CPPUNIT_ASSERT_NO_THROW_MESSAGE( "maxsize test failed", 382 spawned_socket.write( message, message.size() , bytes_written));380 spawned_socket.write( message, message.size() )); 383 381 384 382 // block until data is sent … … 396 394 397 395 // c: read 398 connector_socket.read( message, message.size() , bytes_written);396 connector_socket.read( message, message.size() ); 399 397 CPPUNIT_ASSERT( status.success() && "read test failed" ); 400 398 */ … … 457 455 try 458 456 { 459 recv_sock.recvfrom(data, mMessageLen, from_addr, bytes_read);457 bytes_read = recv_sock.recvfrom(data, mMessageLen, from_addr); 460 458 running = false; 461 459 } … … 487 485 vpr::InetAddr remote_addr = vpr::InetAddr::getLocalHost(); 488 486 vpr::SocketDatagram send_sock; 489 vpr::Uint32 bytes;490 487 491 488 remote_addr.setPort(mReceiverPort); … … 505 502 506 503 CPPUNIT_ASSERT_NO_THROW_MESSAGE("Failed to send to receiver", 507 send_sock.sendto(mMessage, mMessageLen, remote_addr , bytes));504 send_sock.sendto(mMessage, mMessageLen, remote_addr)); 508 505 509 506 CPPUNIT_ASSERT_NO_THROW_MESSAGE("Could not close sender socket", juggler/trunk/modules/vapor/test/TestSuite/TestCases/Socket/SocketConnectorAcceptorTest.cpp
r19550 r19846 136 136 // Send a message 137 137 CPPUNIT_ASSERT_NO_THROW_MESSAGE("Problem writing in acceptor", 138 sock->write(mMessageValue, mMessageLen, bytes_written));138 bytes_written = sock->write(mMessageValue, mMessageLen)); 139 139 CPPUNIT_ASSERT((bytes_written == mMessageLen) && "Didn't send entire messag"); 140 140 … … 175 175 176 176 // Recieve data 177 CPPUNIT_ASSERT_NO_THROW_MESSAGE("Read failed", con_sock.read(data, mMessageLen, bytes_read));177 CPPUNIT_ASSERT_NO_THROW_MESSAGE("Read failed", bytes_read = con_sock.read(data, mMessageLen)); 178 178 CPPUNIT_ASSERT((bytes_read == mMessageLen) && "Connector recieved message of wrong size" ); 179 179 juggler/trunk/modules/vapor/test/TestSuite/TestCases/Socket/SocketCopyConstructorTest.cpp
r18414 r19846 95 95 copy_connector = new vpr::SocketStream (connector_socket); 96 96 97 vpr::Uint32 bytes_read; 98 CPPUNIT_ASSERT_NO_THROW(copy_connector->read (buffer, 40, bytes_read)); 97 CPPUNIT_ASSERT_NO_THROW(copy_connector->read (buffer, 40)); 99 98 copy_connector->close(); 100 99 … … 152 151 if (copy_child != NULL) 153 152 { 154 vpr::Uint32 bytes_written; 155 copy_child->write(buffer, sizeof(buffer), bytes_written); 153 copy_child->write(buffer, sizeof(buffer)); 156 154 CPPUNIT_ASSERT(copy_child->getType() == child_socket.getType()); 157 155 CPPUNIT_ASSERT(copy_child->getRemoteAddr() == child_socket.getRemoteAddr()); juggler/trunk/modules/vapor/test/TestSuite/TestCases/Socket/SocketTest.cpp
r19550 r19846 44 44 45 45 // connect to the acceptor 46 CPPUNIT_ASSERT_NO_THROW_MESSAGE("Socket::connect() failed", connector_socket.connect()); 46 // XXX: Using the commented out CPPUNIT_ASSERT_NO_THROW_MESSAGE() call 47 // below causes a segmentation fault if a vpr::ConnectionRefusedException 48 // is thrown. Why?? 49 try 50 { 51 connector_socket.connect(); 52 } 53 catch (vpr::SocketException& ex) 54 { 55 break; 56 } 57 // CPPUNIT_ASSERT_NO_THROW_MESSAGE("Socket::connect() failed", connector_socket.connect()); 47 58 48 59 // let acceptor accept it before closing … … 161 172 vpr::Uint32 amount_read; 162 173 CPPUNIT_ASSERT_NO_THROW_MESSAGE("readn didn't read", 163 connector_socket.readn(&size_of_data, sizeof(int), amount_read));174 amount_read = connector_socket.readn(&size_of_data, sizeof(int))); 164 175 CPPUNIT_ASSERT( amount_read == sizeof( int ) && "readn didn't read all" ); 165 176 … … 168 179 buffer.resize( size_of_data ); 169 180 CPPUNIT_ASSERT_NO_THROW_MESSAGE("readn didn't read", 170 connector_socket.readn(&buffer[0], size_of_data, amount_read));181 amount_read =connector_socket.readn(&buffer[0], size_of_data)); 171 182 CPPUNIT_ASSERT( amount_read == size_of_data && "readn didn't read all" ); 172 183 … … 216 227 vpr::Uint32 size = buffer.size(); 217 228 CPPUNIT_ASSERT_NO_THROW_MESSAGE("write didn't send", 218 child_socket.write( &size, sizeof( int ), amount_sent));229 amount_sent = child_socket.write(&size, sizeof(int))); 219 230 CPPUNIT_ASSERT( amount_sent == sizeof( int ) && "write didn't send all" ); 220 231 221 232 // send the data... 222 233 CPPUNIT_ASSERT_NO_THROW_MESSAGE("write didn't send", 223 child_socket.write( &buffer[0], buffer.size(), amount_sent));234 amount_sent = child_socket.write(&buffer[0], buffer.size())); 224 235 CPPUNIT_ASSERT( amount_sent == buffer.size() && "write didn't send all" ); 225 236 … … 398 409 CPPUNIT_ASSERT_NO_THROW_MESSAGE("Cannot open sock1", sock1->open()); 399 410 sock1->setReuseAddr(true); 411 CPPUNIT_ASSERT(sock1->getReuseAddr()); 400 412 CPPUNIT_ASSERT_NO_THROW_MESSAGE("Cannot bind sock1", sock1->bind()); 401 413 … … 447 459 CPPUNIT_ASSERT_NO_THROW_MESSAGE("server Socket::open() failed", sock1.open()); 448 460 sock1.setReuseAddr( true ); 461 CPPUNIT_ASSERT(sock1.getReuseAddr()); 449 462 CPPUNIT_ASSERT_NO_THROW_MESSAGE("server Socket::bind() failed", sock1.bind()); 450 463 CPPUNIT_ASSERT_NO_THROW_MESSAGE("server Socket::listen() failed", sock1.listen()); … … 456 469 CPPUNIT_ASSERT_NO_THROW_MESSAGE("open(): server restart", sock2.open()); 457 470 sock2.setReuseAddr( true ); // set the opt in-between for bind() to succeed 471 CPPUNIT_ASSERT(sock2.getReuseAddr()); 458 472 CPPUNIT_ASSERT_NO_THROW_MESSAGE("bind(): server restart", sock2.bind()); 459 473 //std::cout<<"::::::::: " << result<<"\n"<<std::flush; … … 503 517 char buffer[40]; 504 518 char buffer2[]="Oops!"; 505 vpr::Uint32 amount_read , amount_written;519 vpr::Uint32 amount_read; 506 520 507 521 // make a new socket that will connect to port "port" … … 530 544 if (mReadnFlag == true) 531 545 { 532 connector_socket.readn(buffer, 20, amount_read);546 amount_read = connector_socket.readn(buffer, 20); 533 547 } 534 548 else 535 549 { 536 connector_socket.read(buffer, 20, amount_read);550 amount_read = connector_socket.read(buffer, 20); 537 551 } 538 552 539 553 if (amount_read>0) 540 554 { 541 connector_socket.write(buffer, amount_read , amount_written);555 connector_socket.write(buffer, amount_read); 542 556 } 543 557 else 544 558 { 545 connector_socket.write(buffer2, sizeof(buffer2) , amount_written);559 connector_socket.write(buffer2, sizeof(buffer2)); 546 560 } 547 561 … … 566 580 char buffer1[]="Hello, there!"; 567 581 char buffer2[]="Hello"; 568 vpr::Uint32 amount_read (0) , amount_written;582 vpr::Uint32 amount_read (0); 569 583 vpr::InetAddr local_addr; 570 584 … … 613 627 vpr::System::msleep(50); 614 628 615 child_socket.write(buffer1, sizeof(buffer1) , amount_written);629 child_socket.write(buffer1, sizeof(buffer1)); 616 630 617 631 vpr::System::msleep(5); 618 632 619 child_socket.write(buffer2, sizeof(buffer2) , amount_written);633 child_socket.write(buffer2, sizeof(buffer2)); 620 634 621 635 child_socket.setBlocking(false); 622 child_socket.read(buffer, 40, amount_read);636 amount_read = child_socket.read(buffer, 40); 623 637 child_socket.setBlocking(true); 624 638 … … 751 765 CPPUNIT_ASSERT_NO_THROW( sock->connect() ); 752 766 { 753 vpr::Uint32 bytes, bytes_written; 754 sock->read(buffer1, 40, bytes); 755 //sock->write(buffer2, sizeof(buffer2), bytes_written); 756 sock->write(buffer1, bytes, bytes_written); 767 const vpr::Uint32 bytes = sock->read(buffer1, 40); 768 //sock->write(buffer2, sizeof(buffer2)); 769 sock->write(buffer1, bytes); 757 770 mItemProtectionMutex.acquire(); 758 771 mClientCounter++; … … 768 781 char buffer1[] = "Hello there!"; 769 782 char buffer2[40]; 770 vpr::Uint32 bytes , bytes_written;783 vpr::Uint32 bytes; 771 784 772 785 vpr::SocketStream* ss_sock; 773 786 ss_sock=tArg->mSock; 774 787 //send a string to client 775 ss_sock->write(buffer1, sizeof(buffer1) , bytes_written);788 ss_sock->write(buffer1, sizeof(buffer1)); 776 789 //receive a string from client 777 ss_sock->read(buffer2,40, bytes);790 bytes = ss_sock->read(buffer2,40); 778 791 CPPUNIT_ASSERT(bytes != 0); 779 792 long compareString=strcmp(buffer1,buffer2); … … 797 810 CPPUNIT_ASSERT_NO_THROW_MESSAGE("Client socket open failed", client_sock.open()); 798 811 CPPUNIT_ASSERT_NO_THROW_MESSAGE("Client could not connect", client_sock.connect()); 799 vpr::Uint32 bytes; 800 client_sock.readn(buffer, sizeof(buffer), bytes); 812 const vpr::Uint32 bytes = client_sock.readn(buffer, sizeof(buffer)); 801 813 CPPUNIT_ASSERT((bytes == sizeof(buffer)) && "readn didn't read enough!"); 802 814 client_sock.close(); … … 813 825 const unsigned int bytes_to_send = 20; 814 826 const unsigned int pkt_size = 5; 815 vpr::Uint32 bytes;816 827 char buffer[pkt_size]; 817 828 … … 839 850 unsigned to_send = pkt_size; 840 851 if( (bytes_to_send-bytes_sent) < to_send) 841 { to_send = bytes_to_send-bytes_sent; } 842 843 client_sock.write(buffer, pkt_size, bytes); 844 bytes_sent += bytes; 852 { 853 to_send = bytes_to_send - bytes_sent; 854 } 855 856 bytes_sent += client_sock.write(buffer, pkt_size); 845 857 } 846 858 … … 977 989 978 990 CPPUNIT_ASSERT_THROW_MESSAGE("Socket is disconnected", 979 client_sock.recv((void*)temp_buffer, 50, bytes_handled),991 bytes_handled = client_sock.recv((void*)temp_buffer, 50), 980 992 vpr::SocketException); 981 CPPUNIT_ASSERT(bytes_handled == 0); 993 // The above will result in an exceptin being thrown, so bytes_handled 994 // will not be assigned a value. 995 CPPUNIT_ASSERT(bytes_handled == 80); 982 996 983 997 //CPPUNIT_ASSERT(!client_sock.isConnected() && "Should not be connected after read"); … … 986 1000 /* 987 1001 CPPUNIT_ASSERT_THROW_MESSAGE("Socket is disconnected", 988 client_sock.send((void*)temp_buffer, 50, bytes_handled),1002 bytes_handled = client_sock.send((void*)temp_buffer, 50), 989 1003 vpr::IOException); 990 1004 */ 991 client_sock.send((void*)temp_buffer, 50, bytes_handled);1005 bytes_handled = client_sock.send((void*)temp_buffer, 50); 992 1006 993 1007 CPPUNIT_ASSERT_NO_THROW_MESSAGE("Could not close acceptor side of client socket", client_sock.close()); 994 1008 995 CPPUNIT_ASSERT(NULL == client_sock.getHandle() && "Socket handle should be NULL");996 1009 CPPUNIT_ASSERT( !client_sock.isConnected() && "Should be fully disconnected after read and write"); 997 998 /*999 CPPUNIT_ASSERT_NO_THROW_MESSAGE("Could not close acceptor side of client socket", client_sock.close());1000 */1001 1010 1002 1011 CPPUNIT_ASSERT_NO_THROW_MESSAGE("Could not close acceptor", acceptor.close()); juggler/trunk/modules/vapor/vpr/IO/BlockIO.cpp
r19729
