Skip to content
sws.c 28.4 KiB
Newer Older
  /* full initialization for new request after connection */
  memset(&req, 0, sizeof(req));
  req.testno = DOCNUMBER_NOTHING;
  req.open = TRUE;
  req.auth_req = FALSE;
  req.auth = FALSE;
  req.digest = FALSE;
  req.ntlm = FALSE;
  req.pipelining = FALSE;

      if(get_request(msgsock, &req))
        /* non-zero means error, break out of loop */
        break;
      if(prevbounce) {
        /* bounce treatment requested */
        if((req.testno == prevtestno) &&
           (req.partno == prevpartno)) {
          req.partno++;
          logmsg("BOUNCE part number to %ld", req.partno);
        }
      }

      if((req.testno < 0) && (req.testno != DOCNUMBER_CONNECT)) {
        logmsg("special request received, no persistancy");
        break;
      }
        logmsg("instructed to close connection after server-reply");
        break;
      }
        logmsg("=> persistant connection request ended, awaits new request");
      /* if we got a CONNECT, loop and get another request as well! */
    } while(req.open || (req.testno == DOCNUMBER_CONNECT));
    logmsg("====> Client disconnect");