As with messages in libbb/messages.c and their declarations
in include/libbb.h, there are a few other places where
ALIGN1 (force no alignment) is used in definition but not
in declaration, which leads to miscompiles.  Fix these
too.

--- a/include/busybox.h
+++ b/include/busybox.h
@@ -13,10 +13,10 @@ PUSH_AND_SET_FUNCTION_VISIBILITY_TO_HIDD
 
 /* Defined in appletlib.c (by including generated applet_tables.h) */
 /* Keep in sync with applets/applet_tables.c! */
-extern const char applet_names[];
+extern const char applet_names[] ALIGN1;
 extern int (*const applet_main[])(int argc, char **argv);
 extern const uint16_t applet_nameofs[];
-extern const uint8_t applet_install_loc[];
+extern const uint8_t applet_install_loc[] ALIGN1;
 
 #if ENABLE_FEATURE_SUID || ENABLE_FEATURE_PREFER_APPLETS
 # define APPLET_NAME(i) (applet_names + (applet_nameofs[i] & 0x0fff))
--- a/networking/udhcp/common.h
+++ b/networking/udhcp/common.h
@@ -187,8 +187,8 @@ struct option_set {
 };
 
 extern const struct dhcp_optflag dhcp_optflags[];
-extern const char dhcp_option_strings[];
-extern const uint8_t dhcp_option_lengths[];
+extern const char dhcp_option_strings[] ALIGN1;
+extern const uint8_t dhcp_option_lengths[] ALIGN1;
 
 unsigned FAST_FUNC udhcp_option_idx(const char *name);
 
--- a/shell/shell_common.h
+++ b/shell/shell_common.h
@@ -21,7 +21,7 @@
 
 PUSH_AND_SET_FUNCTION_VISIBILITY_TO_HIDDEN
 
-extern const char defifsvar[]; /* "IFS= \t\n" */
+extern const char defifsvar[] ALIGN1; /* "IFS= \t\n" */
 #define defifs (defifsvar + 4)
 
 int FAST_FUNC is_well_formed_var_name(const char *s, char terminator);
_______________________________________________
busybox mailing list
[email protected]
http://lists.busybox.net/mailman/listinfo/busybox

Reply via email to