1009 char* bufferedStream::as_string() {
1010 char* copy = NEW_RESOURCE_ARRAY(char, buffer_pos+1);
1011 strncpy(copy, buffer, buffer_pos);
1012 copy[buffer_pos] = 0; // terminating null
1013 return copy;
1014 }
1015
1016 bufferedStream::~bufferedStream() {
1017 if (!buffer_fixed) {
1018 FREE_C_HEAP_ARRAY(char, buffer);
1019 }
1020 }
1021
1022 #ifndef PRODUCT
1023
1024 #if defined(SOLARIS) || defined(LINUX) || defined(AIX) || defined(_ALLBSD_SOURCE)
1025 #include <sys/types.h>
1026 #include <sys/socket.h>
1027 #include <netinet/in.h>
1028 #include <arpa/inet.h>
1029 #endif
1030
1031 // Network access
1032 networkStream::networkStream() : bufferedStream(1024*10, 1024*10) {
1033
1034 _socket = -1;
1035
1036 int result = os::socket(AF_INET, SOCK_STREAM, 0);
1037 if (result <= 0) {
1038 assert(false, "Socket could not be created!");
1039 } else {
1040 _socket = result;
1041 }
1042 }
1043
1044 int networkStream::read(char *buf, size_t len) {
1045 return os::recv(_socket, buf, (int)len, 0);
1046 }
1047
|
1009 char* bufferedStream::as_string() {
1010 char* copy = NEW_RESOURCE_ARRAY(char, buffer_pos+1);
1011 strncpy(copy, buffer, buffer_pos);
1012 copy[buffer_pos] = 0; // terminating null
1013 return copy;
1014 }
1015
1016 bufferedStream::~bufferedStream() {
1017 if (!buffer_fixed) {
1018 FREE_C_HEAP_ARRAY(char, buffer);
1019 }
1020 }
1021
1022 #ifndef PRODUCT
1023
1024 #if defined(SOLARIS) || defined(LINUX) || defined(AIX) || defined(_ALLBSD_SOURCE)
1025 #include <sys/types.h>
1026 #include <sys/socket.h>
1027 #include <netinet/in.h>
1028 #include <arpa/inet.h>
1029 #elif defined(_WINDOWS)
1030 #include <winsock2.h>
1031 #endif
1032
1033 // Network access
1034 networkStream::networkStream() : bufferedStream(1024*10, 1024*10) {
1035
1036 _socket = -1;
1037
1038 int result = os::socket(AF_INET, SOCK_STREAM, 0);
1039 if (result <= 0) {
1040 assert(false, "Socket could not be created!");
1041 } else {
1042 _socket = result;
1043 }
1044 }
1045
1046 int networkStream::read(char *buf, size_t len) {
1047 return os::recv(_socket, buf, (int)len, 0);
1048 }
1049
|