Make command queue addition depend on connection protocol. Only reject for protocol zero.
r1732 | dcl | 2007-03-28 12:19:10 +1000 (Wed, 28 Mar 2007) | 2 lines
This commit is contained in:
9
costa.c
9
costa.c
@@ -113,10 +113,12 @@
|
|||||||
assert(self);
|
assert(self);
|
||||||
|
|
||||||
/* check for lock */
|
/* check for lock */
|
||||||
|
#if 0 /* DFC */
|
||||||
if(self->iLock)
|
if(self->iLock)
|
||||||
{
|
{
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
#endif
|
||||||
/* check Size */
|
/* check Size */
|
||||||
if(self->iCount >= self->iMaxSize)
|
if(self->iCount >= self->iMaxSize)
|
||||||
{
|
{
|
||||||
@@ -146,10 +148,12 @@
|
|||||||
assert(self);
|
assert(self);
|
||||||
|
|
||||||
/* check for lock */
|
/* check for lock */
|
||||||
|
#if 0 /* DFC */
|
||||||
if(self->iLock)
|
if(self->iLock)
|
||||||
{
|
{
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
/* do not want 0 commands */
|
/* do not want 0 commands */
|
||||||
if(strlen(pCommand) < 1)
|
if(strlen(pCommand) < 1)
|
||||||
@@ -195,4 +199,9 @@
|
|||||||
{
|
{
|
||||||
self->iLock = 0;
|
self->iLock = 0;
|
||||||
}
|
}
|
||||||
|
/*--------------------------------------------------------------------------*/
|
||||||
|
int CostaLocked(pCosta self)
|
||||||
|
{
|
||||||
|
return self->iLock;
|
||||||
|
}
|
||||||
|
|
||||||
|
|||||||
1
costa.h
1
costa.h
@@ -25,5 +25,6 @@
|
|||||||
/*----------------------------------------------------------------------*/
|
/*----------------------------------------------------------------------*/
|
||||||
void CostaLock(pCosta self);
|
void CostaLock(pCosta self);
|
||||||
void CostaUnlock(pCosta self);
|
void CostaUnlock(pCosta self);
|
||||||
|
int CostaLocked(pCosta self);
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|||||||
15
nread.c
15
nread.c
@@ -292,6 +292,11 @@ extern int VerifyChannel(mkChannel *self); /* defined in network.c */
|
|||||||
if(strlen(pItem->pHold) > 0)
|
if(strlen(pItem->pHold) > 0)
|
||||||
{
|
{
|
||||||
strcat(pItem->pHold,pPtr);
|
strcat(pItem->pHold,pPtr);
|
||||||
|
/* 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)
|
||||||
{
|
{
|
||||||
@@ -302,6 +307,11 @@ extern int VerifyChannel(mkChannel *self); /* defined in network.c */
|
|||||||
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)
|
||||||
{
|
{
|
||||||
@@ -515,6 +525,11 @@ extern int VerifyChannel(mkChannel *self); /* defined in network.c */
|
|||||||
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