7.12.2010 - bug fixes in PIString, all classes now based on PIString

This commit is contained in:
peri4
2010-12-07 19:13:15 +03:00
parent 08f214dbfa
commit 66d998f289
14 changed files with 194 additions and 145 deletions

View File

@@ -1,7 +1,7 @@
#include "piethernet.h"
PIEthernet::PIEthernet(string ip, int port, void * data_, EthernetFunc slot): PIThread() {
PIEthernet::PIEthernet(PIString ip, int port, void * data_, EthernetFunc slot): PIThread() {
setPriority(piHigh);
data = data_;
ip_ = ip_s = ip;
@@ -80,7 +80,7 @@ void PIEthernet::end() {
bool PIEthernet::init() {
addr_.sin_addr.s_addr = inet_addr(ip_.c_str());
addr_.sin_addr.s_addr = inet_addr(ip_.data());
addr_.sin_family = PF_INET;
addr_.sin_port = htons(port_);
if (bind(sock, (sockaddr * )&addr_, sizeof(addr_)) == -1) {
@@ -91,13 +91,13 @@ bool PIEthernet::init() {
}
bool PIEthernet::send(string ip, int port, char * data, int size) {
bool PIEthernet::send(PIString ip, int port, char * data, int size) {
if (sock_s == -1) {
//cout << "[PIEthernet] Can`t send to uninitialized socket" << endl;
return false;
}
saddr_.sin_port = htons(port);
saddr_.sin_addr.s_addr = inet_addr(ip.c_str());
saddr_.sin_addr.s_addr = inet_addr(ip.data());
saddr_.sin_family = PF_INET;
wrote = sendto(sock_s, data, size, 0, (sockaddr * )&saddr_, sizeof(saddr_));
if (wrote != size) {