lib/mpi: Fixed erroneous check on return value of mpi_resize()
PATCH 1/1 lib/mpi: Fixed erroneous check on return value of mpi_resize()
mpi_resize() returns -ENOMEM on error and 0 on success.
--- lib/mpi/mpicoder.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
lib/mpi/mpicoder.c +1 -1
@@ -98,7 +98,7 @@ int mpi_fromstr(MPI val, const char *str) nbytes = (nbits +7 ) /8 ; nlimbs = (nbytes +BYTES_PER_MPI_LIMB -1 ) /BYTES_PER_MPI_LIMB ;if (val->alloced < nlimbs) -if (!mpi_resize (val, nlimbs)) +if (mpi_resize (val, nlimbs) <0 )return -ENOMEM ; i =BYTES_PER_MPI_LIMB - nbytes %BYTES_PER_MPI_LIMB ; i %=BYTES_PER_MPI_LIMB ;
Signature · 1 line
1.7.9.5
Quoted 1 line · Adarsh J
mpi_resize()returns-ENOMEMon error and 0 on success.
Good catch.
But it seems to me that mpi_fromstr() has no in-tree users. Also, mpi_fromstr() in RHEL 5.8/6.2 has no users. We forgot to exclude when adding MPI support?
Quoted 21 lines
Signed-off-by Adarsh J <[email protected]>--- lib/mpi/mpicoder.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)lib/mpi/mpicoder.c +1
-1@@ -98,7 +98,7 @@ int mpi_fromstr(MPI val, const char *str) nbytes = (nbits +7 ) /8 ; nlimbs = (nbytes +BYTES_PER_MPI_LIMB -1 ) /BYTES_PER_MPI_LIMB ;if (val->alloced < nlimbs) -if (!mpi_resize (val, nlimbs)) +if (mpi_resize (val, nlimbs) <0 )return -ENOMEM ; i =BYTES_PER_MPI_LIMB - nbytes %BYTES_PER_MPI_LIMB ; i %=BYTES_PER_MPI_LIMB ;Signature · 1 line
1.7.9.5
Quoted 8 lines · Tetsuo Handa
Quoted 1 line · Adarsh J
mpi_resize()returns-ENOMEMon error and 0 on success.Good catch.
But it seems to me that
mpi_fromstr()has no in-tree users. Also,mpi_fromstr()in RHEL 5.8/6.2 has no users. We forgot to exclude when adding MPI support?
If that's the case, then it should be removed.
(Removed root@ from cc:)
Quoted 23 lines
Quoted 22 lines
Signed-off-by Adarsh J <[email protected]>--- lib/mpi/mpicoder.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)lib/mpi/mpicoder.c +1
-1@@ -98,7 +98,7 @@ int mpi_fromstr(MPI val, const char *str) nbytes = (nbits +7 ) /8 ; nlimbs = (nbytes +BYTES_PER_MPI_LIMB -1 ) /BYTES_PER_MPI_LIMB ;if (val->alloced < nlimbs) -if (!mpi_resize (val, nlimbs)) +if (mpi_resize (val, nlimbs) <0 )return -ENOMEM ; i =BYTES_PER_MPI_LIMB - nbytes %BYTES_PER_MPI_LIMB ; i %=BYTES_PER_MPI_LIMB ;Signature · 1 line
1.7.9.5
Signature · 2 lines
James Morris <[email protected]>
Quoted 3 lines · Adarsh J
mpi_resize()returns-ENOMEMon error and 0 on success.Signed-off-by Adarsh J <[email protected]>
Thanks.
Quoted 24 lines
---
lib/mpi/mpicoder.c | 2 +-1 file changed, 1 insertion(+), 1 deletion(-)lib/mpi/mpicoder.c +1
-2@@ -98,7 +98,7 @@ int mpi_fromstr(MPI val, const char *str) nbytes = (nbits + 7) / 8; nlimbs = (nbytes + BYTES_PER_MPI_LIMB - 1) / BYTES_PER_MPI_LIMB; if (val->alloced < nlimbs) - if (!mpi_resize(val, nlimbs)) + if (mpi_resize(val, nlimbs) < 0) return -ENOMEM; i = BYTES_PER_MPI_LIMB - nbytes % BYTES_PER_MPI_LIMB; i %= BYTES_PER_MPI_LIMB; --1.7.9.5
--
To unsubscribe from this list: send the line "unsubscribe linux-security-module" in the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html