DFC locking for protocol zero only
This commit is contained in:
15
nread.c
15
nread.c
@ -295,6 +295,11 @@ static int NetReadRead(pNetRead self, pNetItem pItem)
|
|||||||
/* do we have something in hold ? */
|
/* do we have something in hold ? */
|
||||||
if (strlen(pItem->pHold) > 0) {
|
if (strlen(pItem->pHold) > 0) {
|
||||||
strlcat(pItem->pHold, pPtr, 511);
|
strlcat(pItem->pHold, pPtr, 511);
|
||||||
|
/* DFC locking for protocol zero only */
|
||||||
|
if (pItem->pCon->iProtocolID == 0 &&
|
||||||
|
CostaLocked(pItem->pCon->pStack))
|
||||||
|
iStat = 0;
|
||||||
|
else
|
||||||
iStat = CostaTop(pItem->pCon->pStack, pItem->pHold);
|
iStat = CostaTop(pItem->pCon->pStack, pItem->pHold);
|
||||||
if (!iStat) {
|
if (!iStat) {
|
||||||
SCWrite(pItem->pCon, "ERROR: Busy", eError);
|
SCWrite(pItem->pCon, "ERROR: Busy", eError);
|
||||||
@ -302,6 +307,11 @@ static int NetReadRead(pNetRead self, pNetItem pItem)
|
|||||||
pItem->pHold[0] = '\0';
|
pItem->pHold[0] = '\0';
|
||||||
} else {
|
} else {
|
||||||
/* no, normal command */
|
/* no, normal command */
|
||||||
|
/* DFC locking for protocol zero only */
|
||||||
|
if (pItem->pCon->iProtocolID == 0 &&
|
||||||
|
CostaLocked(pItem->pCon->pStack))
|
||||||
|
iStat = 0;
|
||||||
|
else
|
||||||
iStat = CostaTop(pItem->pCon->pStack, pPtr);
|
iStat = CostaTop(pItem->pCon->pStack, pPtr);
|
||||||
if (!iStat) {
|
if (!iStat) {
|
||||||
SCWrite(pItem->pCon, "ERROR: Busy", eError);
|
SCWrite(pItem->pCon, "ERROR: Busy", eError);
|
||||||
@ -487,6 +497,11 @@ static int TelnetRead(pNetRead self, pNetItem pItem)
|
|||||||
break;
|
break;
|
||||||
case '\r':
|
case '\r':
|
||||||
case '\n':
|
case '\n':
|
||||||
|
/* DFC locking for protocol zero only */
|
||||||
|
if (pItem->pCon->iProtocolID == 0 &&
|
||||||
|
CostaLocked(pItem->pCon->pStack))
|
||||||
|
iStat = 0;
|
||||||
|
else
|
||||||
iStat = CostaTop(pItem->pCon->pStack, pItem->pHold);
|
iStat = CostaTop(pItem->pCon->pStack, pItem->pHold);
|
||||||
/* printf("%s\n",pItem->pHold); */
|
/* printf("%s\n",pItem->pHold); */
|
||||||
if (!iStat) {
|
if (!iStat) {
|
||||||
|
Reference in New Issue
Block a user