Exemple #1
0
/*
    Return number of bytes read. Return -1 on errors and EOF.
 */
static ssize innerRead(Webs *wp, char *buf, ssize size)
{
    Ms          *ms;
    uchar       *mbuf;
    ssize       nbytes;
    int         msize, readMore;

    ms = (Ms*) wp->ssl;
    do {
        if ((msize = matrixSslGetReadbuf(ms->handle, &mbuf)) < 0) {
            return -1;
        }
        readMore = 0;
        if ((nbytes = socketRead(wp->sid, mbuf, msize)) < 0) {
            return nbytes;
        } else if (nbytes > 0) {
            nbytes = processIncoming(wp, buf, size, nbytes, &readMore);
            if (nbytes < 0) {
                sp = socketPtr(wp->sid);
                sp->flags |= SOCKET_EOF;
                return nbytes;
            }
            if (nbytes > 0) {
                return nbytes;
            }
        }
    } while (readMore);
    return 0;
}
int p3ZeroReserveRS::tick()
{
    if( !g_ZeroReservePlugin->isStopped() ) // something bad must have happened. Don't make it worse
        processIncoming();

    janitor();
    return 0;
}
Exemple #3
0
TQTcpServer::TQTcpServer(shared_ptr<QTcpServer> server,
                         shared_ptr<TAsyncProcessor> processor,
                         shared_ptr<TProtocolFactory> pfact,
                         QObject* parent)
  : QObject(parent)
  , server_(server)
  , processor_(processor)
  , pfact_(pfact)
{
  connect(server.get(), SIGNAL(newConnection()), SLOT(processIncoming()));
}
Exemple #4
0
void SocksClient::sock_readyRead()
{
    QByteArray block = d->sock.readAll();

    //qDebug() << this << "::sock_readyRead " << block.size() << " bytes." <<
    //            "udp=" << d->udp << openMode();
    if(!isOpen()) {
        if(d->incoming)
            processIncoming(block);
        else
            processOutgoing(block);
    }
    else {
        if(!d->udp) {
            appendRead(block);
            emit readyRead();
        }
    }
}
Exemple #5
0
/*
    Return number of bytes read. Return -1 on errors and EOF.
 */
static ssize innerRead(Webs *wp, char *buf, ssize size)
{
    Ms          *ms;
    uchar       *mbuf;
    ssize       nbytes;
    int         msize, readMore;

    ms = (Ms*) wp->ms;
    do {
        if ((msize = matrixSslGetReadbuf(ms->handle, &mbuf)) < 0) {
            return -1;
        }
        readMore = 0;
        if ((nbytes = socketRead(wp->sid, mbuf, msize)) > 0) {
            if ((nbytes = processIncoming(wp, buf, size, nbytes, &readMore)) > 0) {
                return nbytes;
            }
        }
    } while (readMore);
    return 0;
}
Exemple #6
0
void run() {
	setup();
	while (!done) processIncoming();
}