All of lore.kernel.org
 help / color / mirror / Atom feed
* Re: [PATCH] src/sae.c: Use realloc(3) instead of reallocarray(3)
@ 2021-09-19 18:19 Fabrice Fontaine
  0 siblings, 0 replies; 3+ messages in thread
From: Fabrice Fontaine @ 2021-09-19 18:19 UTC (permalink / raw)
  To: iwd

[-- Attachment #1: Type: text/plain, Size: 2512 bytes --]

Hi Denis,

Le dim. 19 sept. 2021 à 20:12, Denis Kenzior <denkenz(a)gmail.com> a écrit :
>
> Hi Fabrice,
>
> On 9/19/21 3:57 AM, Fabrice Fontaine wrote:
> > reallocarray(3) has been added to glibc relatively recently (version
> > 2.26, from 2017) and apparently not all users run new enough glibc.
> > Moreover, reallocarray is not available with uclibc-ng. Just use
> > realloc(3) for now since in this case there's no real risk of overflow.
> > This will avoid the following build failure since commit
> > 891b78e9e892a3bcd800eb3a298e6380e9a15dd1:
> >
> > /home/giuliobenetti/autobuild/run/instance-3/output-1/host/lib/gcc/xtensa-buildroot-linux-uclibc/10.3.0/../../../../xtensa-buildroot-linux-uclibc/bin/ld: src/sae.o: in function `sae_rx_authenticate':
> > sae.c:(.text+0xd74): undefined reference to `reallocarray'
> >
> > Fixes:
> >   - http://autobuild.buildroot.org/results/c6d3f86282c44645b4f1c61882dc63ccfc8eb35a
> >
> > Signed-off-by: Fabrice Fontaine <fontaine.fabrice(a)gmail.com>
>
> No S-o-b tags please.
OK, I'll remove it from v2.
>
> > ---
> >   src/sae.c | 6 +++---
> >   1 file changed, 3 insertions(+), 3 deletions(-)
> >
> > diff --git a/src/sae.c b/src/sae.c
> > index 7e6377f5..d04891e7 100644
> > --- a/src/sae.c
> > +++ b/src/sae.c
> > @@ -104,7 +104,7 @@ static void sae_rejected_groups_append(struct sae_sm *sm, uint16_t group)
> >       uint16_t i;
> >
> >       if (!sm->rejected_groups) {
> > -             sm->rejected_groups = reallocarray(NULL, 2, sizeof(uint16_t));
> > +             sm->rejected_groups = realloc(NULL, 2 * sizeof(uint16_t));
> >               sm->rejected_groups[0] = 1;
> >               sm->rejected_groups[1] = group;
> >               return;
> > @@ -114,8 +114,8 @@ static void sae_rejected_groups_append(struct sae_sm *sm, uint16_t group)
> >               if (sm->rejected_groups[i] == group)
> >                       return;
> >
> > -     sm->rejected_groups = reallocarray(sm->rejected_groups,
> > -                                             i + 1, sizeof(uint16_t));
> > +     sm->rejected_groups = realloc(sm->rejected_groups,
> > +                                     (i + 1) * sizeof(uint16_t));
>
> Can we add this to missing.h instead?  The reallocarray version is more clear /
> preferable to open-coded version.
Sure, I'll send a v2.
>
> >       sm->rejected_groups[0] += 1;
> >       sm->rejected_groups[i] = group;
> >   }
> >
>
> Regards,
> -Denis
Best Regards,

Fabrice

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [PATCH] src/sae.c: Use realloc(3) instead of reallocarray(3)
@ 2021-09-19 17:54 Denis Kenzior
  0 siblings, 0 replies; 3+ messages in thread
From: Denis Kenzior @ 2021-09-19 17:54 UTC (permalink / raw)
  To: iwd

[-- Attachment #1: Type: text/plain, Size: 2074 bytes --]

Hi Fabrice,

On 9/19/21 3:57 AM, Fabrice Fontaine wrote:
> reallocarray(3) has been added to glibc relatively recently (version
> 2.26, from 2017) and apparently not all users run new enough glibc.
> Moreover, reallocarray is not available with uclibc-ng. Just use
> realloc(3) for now since in this case there's no real risk of overflow.
> This will avoid the following build failure since commit
> 891b78e9e892a3bcd800eb3a298e6380e9a15dd1:
> 
> /home/giuliobenetti/autobuild/run/instance-3/output-1/host/lib/gcc/xtensa-buildroot-linux-uclibc/10.3.0/../../../../xtensa-buildroot-linux-uclibc/bin/ld: src/sae.o: in function `sae_rx_authenticate':
> sae.c:(.text+0xd74): undefined reference to `reallocarray'
> 
> Fixes:
>   - http://autobuild.buildroot.org/results/c6d3f86282c44645b4f1c61882dc63ccfc8eb35a
> 
> Signed-off-by: Fabrice Fontaine <fontaine.fabrice(a)gmail.com>

No S-o-b tags please.

> ---
>   src/sae.c | 6 +++---
>   1 file changed, 3 insertions(+), 3 deletions(-)
> 
> diff --git a/src/sae.c b/src/sae.c
> index 7e6377f5..d04891e7 100644
> --- a/src/sae.c
> +++ b/src/sae.c
> @@ -104,7 +104,7 @@ static void sae_rejected_groups_append(struct sae_sm *sm, uint16_t group)
>   	uint16_t i;
>   
>   	if (!sm->rejected_groups) {
> -		sm->rejected_groups = reallocarray(NULL, 2, sizeof(uint16_t));
> +		sm->rejected_groups = realloc(NULL, 2 * sizeof(uint16_t));
>   		sm->rejected_groups[0] = 1;
>   		sm->rejected_groups[1] = group;
>   		return;
> @@ -114,8 +114,8 @@ static void sae_rejected_groups_append(struct sae_sm *sm, uint16_t group)
>   		if (sm->rejected_groups[i] == group)
>   			return;
>   
> -	sm->rejected_groups = reallocarray(sm->rejected_groups,
> -						i + 1, sizeof(uint16_t));
> +	sm->rejected_groups = realloc(sm->rejected_groups,
> +					(i + 1) * sizeof(uint16_t));

Can we add this to missing.h instead?  The reallocarray version is more clear / 
preferable to open-coded version.

>   	sm->rejected_groups[0] += 1;
>   	sm->rejected_groups[i] = group;
>   }
> 

Regards,
-Denis

^ permalink raw reply	[flat|nested] 3+ messages in thread

* [PATCH] src/sae.c: Use realloc(3) instead of reallocarray(3)
@ 2021-09-19  8:57 Fabrice Fontaine
  0 siblings, 0 replies; 3+ messages in thread
From: Fabrice Fontaine @ 2021-09-19  8:57 UTC (permalink / raw)
  To: iwd

[-- Attachment #1: Type: text/plain, Size: 1758 bytes --]

reallocarray(3) has been added to glibc relatively recently (version
2.26, from 2017) and apparently not all users run new enough glibc.
Moreover, reallocarray is not available with uclibc-ng. Just use
realloc(3) for now since in this case there's no real risk of overflow.
This will avoid the following build failure since commit
891b78e9e892a3bcd800eb3a298e6380e9a15dd1:

/home/giuliobenetti/autobuild/run/instance-3/output-1/host/lib/gcc/xtensa-buildroot-linux-uclibc/10.3.0/../../../../xtensa-buildroot-linux-uclibc/bin/ld: src/sae.o: in function `sae_rx_authenticate':
sae.c:(.text+0xd74): undefined reference to `reallocarray'

Fixes:
 - http://autobuild.buildroot.org/results/c6d3f86282c44645b4f1c61882dc63ccfc8eb35a

Signed-off-by: Fabrice Fontaine <fontaine.fabrice(a)gmail.com>
---
 src/sae.c | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/src/sae.c b/src/sae.c
index 7e6377f5..d04891e7 100644
--- a/src/sae.c
+++ b/src/sae.c
@@ -104,7 +104,7 @@ static void sae_rejected_groups_append(struct sae_sm *sm, uint16_t group)
 	uint16_t i;
 
 	if (!sm->rejected_groups) {
-		sm->rejected_groups = reallocarray(NULL, 2, sizeof(uint16_t));
+		sm->rejected_groups = realloc(NULL, 2 * sizeof(uint16_t));
 		sm->rejected_groups[0] = 1;
 		sm->rejected_groups[1] = group;
 		return;
@@ -114,8 +114,8 @@ static void sae_rejected_groups_append(struct sae_sm *sm, uint16_t group)
 		if (sm->rejected_groups[i] == group)
 			return;
 
-	sm->rejected_groups = reallocarray(sm->rejected_groups,
-						i + 1, sizeof(uint16_t));
+	sm->rejected_groups = realloc(sm->rejected_groups,
+					(i + 1) * sizeof(uint16_t));
 	sm->rejected_groups[0] += 1;
 	sm->rejected_groups[i] = group;
 }
-- 
2.33.0

^ permalink raw reply related	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2021-09-19 18:19 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-09-19 18:19 [PATCH] src/sae.c: Use realloc(3) instead of reallocarray(3) Fabrice Fontaine
  -- strict thread matches above, loose matches on Subject: below --
2021-09-19 17:54 Denis Kenzior
2021-09-19  8:57 Fabrice Fontaine

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.