X-Git-Url: https://gerrit.o-ran-sc.org/r/gitweb?a=blobdiff_plain;f=src%2Frmr%2Fsi%2Fsrc%2Fsi95%2Fsisendt.c;h=81a3be64a3f8c7f653dd249337c9c1fe3354d49b;hb=2bc430ad6900e3bfd35c991f6cc30d5ba6112403;hp=ae07edb6582e35e8514dd0acff7d95e5c114ea2e;hpb=2dfb310585e1ea20d222aa1ed129c89e8c240935;p=ric-plt%2Flib%2Frmr.git diff --git a/src/rmr/si/src/si95/sisendt.c b/src/rmr/si/src/si95/sisendt.c index ae07edb..81a3be6 100644 --- a/src/rmr/si/src/si95/sisendt.c +++ b/src/rmr/si/src/si95/sisendt.c @@ -25,10 +25,11 @@ * Abstract: This module contains various send functions: * SIsendt -- send tcp with queuing if would block * SIsendt_nq - send tcp without queuing if blocking - +* * Date: 27 March 1995 * Author: E. Scott Daniels * Mod: 22 Feb 2002 - To better process queued data +* 14 Feb 2020 - To fix index bug if fd < 0. * ***************************************************************************** */ @@ -57,6 +58,10 @@ extern int SIsendt( struct ginfo_blk *gptr, int fd, char *ubuf, int ulen ) { errno = EINVAL; gptr->sierr = SI_ERR_SESSID; + if( fd < 0 ) { + return SI_ERROR; // bad form trying to use this fd + } + if( fd < MAX_FDS ) { // straight from map if possible tpptr = gptr->tp_map[fd]; } else {