[PATCH] httpd: code shrink

Xabier Oneca -- xOneca xoneca at gmail.com
Tue Oct 6 18:35:44 UTC 2020


Hi Bruno,

> If I understand correctly:
>
> decode_base64() from uuencode.c = bigger one
> decodeBase64(char *Data) from httpd.c = smaller one

You understood it right. :)

> Assuming they are equivalent (I didn't check), wouldn't it make more sense to:
> a. Do the check in uuencode.c to see if httpd.c is used and call the httpd one (smaller of the two) in the uudecode/base64 applets?

They are not the same. httpd's decodeBase64() does not have to deal
with NULL bytes. Any NULL byte will be treated as the end of the
decoded string.

> b. Line up the uuencode.c one with the httpd version to become smaller and call that one for all decode64 purposes (removing the httpd specific one)?

The one from uudecode seems to be optimized to share most of the code
for uu-decode and base64-decode. I haven't looked at it hard enough,
but as a first approach, I didn't want to touch much code. Probably
there's room for more optimization here.

Thanks,

Xabier Oneca_,,_


More information about the busybox mailing list