remove obsolete size restriction on port messages

This commit is contained in:
rfm 2023-12-05 14:33:56 +00:00
parent 05c1ba2e6e
commit aec85c5a4f
3 changed files with 33 additions and 56 deletions

View file

@ -103,11 +103,6 @@
+ (BOOL) _exists: (int)pid;
@end
/*
* Largest chunk of data possible in DO
*/
static uint32_t maxDataLength = 32 * 1024 * 1024;
#if 0
#define M_LOCK(X) {NSDebugMLLog(@"NSMessagePort",@"lock %@",X); [X lock];}
#define M_UNLOCK(X) {NSDebugMLLog(@"NSMessagePort",@"unlock %@",X); [X unlock];}
@ -580,15 +575,20 @@ static Class runLoopClass;
else
{
want = [rData length];
if (want < rWant)
if (want < MAX(rWant, NETBLOCK))
{
want = rWant;
[rData setLength: want];
}
if (want < NETBLOCK)
{
want = NETBLOCK;
[rData setLength: want];
want = MAX(rWant, NETBLOCK);
NS_DURING
{
[rData setLength: want];
}
NS_HANDLER
{
M_UNLOCK(myLock);
[self invalidate];
[localException raise];
}
NS_ENDHANDLER
}
}
@ -682,14 +682,6 @@ static Class runLoopClass;
}
else
{
if (l > maxDataLength)
{
NSLog(@"%@ - unreasonable length (%u) for data",
self, l);
M_UNLOCK(myLock);
[self invalidate];
return;
}
/*
* If not a port or zero length data,
* we discard the data read so far and fill the
@ -705,14 +697,6 @@ static Class runLoopClass;
}
else if (rType == GSP_HEAD)
{
if (l > maxDataLength)
{
NSLog(@"%@ - unreasonable length (%u) for data",
self, l);
M_UNLOCK(myLock);
[self invalidate];
return;
}
/*
* If not a port or zero length data,
* we discard the data read so far and fill the