diff --git a/include/osmocom/core/endian.h b/include/osmocom/core/endian.h
index 6107b12..426ab68 100644
--- a/include/osmocom/core/endian.h
+++ b/include/osmocom/core/endian.h
@@ -1,7 +1,7 @@
 /*! \file endian.h
  *
  * GNU and FreeBSD have various ways to express the
- * endianess but none of them is similiar enough. This
+ * endianness but none of them is similar enough. This
  * will create two defines that allows to decide on the
  * endian. The following will be defined to either 0 or
  * 1 at the end of the file.
diff --git a/include/osmocom/gprs/protocol/gsm_04_60.h b/include/osmocom/gprs/protocol/gsm_04_60.h
index ed63fe0..4028110 100644
--- a/include/osmocom/gprs/protocol/gsm_04_60.h
+++ b/include/osmocom/gprs/protocol/gsm_04_60.h
@@ -28,7 +28,7 @@
 	uint8_t spare_lo:6,
 		 dummy:2;
 #elif OSMO_IS_BIG_ENDIAN
-/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianess.py) */
+/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianness.py) */
 	uint8_t tfi_hi:2, cv:4, si:1, r:1;
 	uint8_t bsn1_hi:5, tfi_lo:3;
 	uint8_t bsn2_hi:2, bsn1_lo:6;
@@ -56,7 +56,7 @@
 	uint8_t spare_lo:5,
 		 dummy:3;
 #elif OSMO_IS_BIG_ENDIAN
-/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianess.py) */
+/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianness.py) */
 	uint8_t tfi_hi:2, cv:4, si:1, r:1;
 	uint8_t bsn1_hi:5, tfi_lo:3;
 	uint8_t cps_hi:2, bsn1_lo:6;
@@ -83,7 +83,7 @@
 		 spare:1,
 		 dummy:1;
 #elif OSMO_IS_BIG_ENDIAN
-/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianess.py) */
+/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianness.py) */
 	uint8_t tfi_hi:2, cv:4, si:1, r:1;
 	uint8_t bsn1_hi:5, tfi_lo:3;
 	uint8_t cps_hi:2, bsn1_lo:6;
@@ -106,7 +106,7 @@
 	uint8_t bsn2_lo:3,
 		 cps:5;
 #elif OSMO_IS_BIG_ENDIAN
-/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianess.py) */
+/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianness.py) */
 	uint8_t tfi_hi:1, rrbp:2, es_p:2, usf:3;
 	uint8_t bsn1_hi:2, pr:2, tfi_lo:4;
 	uint8_t bsn1_mid:8;
@@ -129,7 +129,7 @@
 		 cps:3,
 		 dummy:4;
 #elif OSMO_IS_BIG_ENDIAN
-/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianess.py) */
+/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianness.py) */
 	uint8_t tfi_hi:1, rrbp:2, es_p:2, usf:3;
 	uint8_t bsn1_hi:2, pr:2, tfi_lo:4;
 	uint8_t bsn1_mid:8;
@@ -152,7 +152,7 @@
 		 spb:2,
 		 dummy:1;
 #elif OSMO_IS_BIG_ENDIAN
-/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianess.py) */
+/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianness.py) */
 	uint8_t tfi_hi:1, rrbp:2, es_p:2, usf:3;
 	uint8_t bsn1_hi:2, pr:2, tfi_lo:4;
 	uint8_t bsn1_mid:8;
diff --git a/include/osmocom/gprs/protocol/gsm_08_18.h b/include/osmocom/gprs/protocol/gsm_08_18.h
index d6f0fe6..1152eb6 100644
--- a/include/osmocom/gprs/protocol/gsm_08_18.h
+++ b/include/osmocom/gprs/protocol/gsm_08_18.h
@@ -367,7 +367,7 @@
 			pdu_type_ext:3,
 			reserved:4;
 #elif OSMO_IS_BIG_ENDIAN
-/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianess.py) */
+/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianness.py) */
 		uint8_t reserved:4, pdu_type_ext:3, ack_requested:1;
 #endif
 } __attribute__ ((packed));
diff --git a/include/osmocom/gsm/protocol/gsm_03_41.h b/include/osmocom/gsm/protocol/gsm_03_41.h
index 1b399ae..f6c36ca 100644
--- a/include/osmocom/gsm/protocol/gsm_03_41.h
+++ b/include/osmocom/gsm/protocol/gsm_03_41.h
@@ -25,7 +25,7 @@
 		uint8_t update:4;
 		uint8_t code_lo:4;
 #elif OSMO_IS_BIG_ENDIAN
-/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianess.py) */
+/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianness.py) */
 		uint8_t gs:2, code_hi:6;
 		uint8_t code_lo:4, update:4;
 #endif
@@ -36,7 +36,7 @@
 		uint8_t language:4;
 		uint8_t group:4;
 #elif OSMO_IS_BIG_ENDIAN
-/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianess.py) */
+/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianness.py) */
 		uint8_t group:4, language:4;
 #endif
 	} dcs;
@@ -45,7 +45,7 @@
 		uint8_t total:4;
 		uint8_t current:4;
 #elif OSMO_IS_BIG_ENDIAN
-/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianess.py) */
+/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianness.py) */
 		uint8_t current:4, total:4;
 #endif
 	} page;
@@ -63,7 +63,7 @@
 		uint8_t update:4;
 		uint8_t code_lo:4;
 #elif OSMO_IS_BIG_ENDIAN
-/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianess.py) */
+/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianness.py) */
 		uint8_t gs:2, alert:1, popup:1, code_hi:4;
 		uint8_t code_lo:4, update:4;
 #endif
diff --git a/include/osmocom/gsm/protocol/gsm_04_08.h b/include/osmocom/gsm/protocol/gsm_04_08.h
index e494b58..66aa135 100644
--- a/include/osmocom/gsm/protocol/gsm_04_08.h
+++ b/include/osmocom/gsm/protocol/gsm_04_08.h
@@ -22,7 +22,7 @@
 		 rev_lev:2,
 		 spare:1;
 #elif OSMO_IS_BIG_ENDIAN
-/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianess.py) */
+/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianness.py) */
 	uint8_t spare:1, rev_lev:2, es_ind:1, a5_1:1, pwr_lev:3;
 #endif
 } __attribute__ ((packed));
@@ -51,7 +51,7 @@
 		 spare4:1,
 		 cm3:1;
 #elif OSMO_IS_BIG_ENDIAN
-/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianess.py) */
+/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianness.py) */
 	uint8_t spare:1, rev_lev:2, es_ind:1, a5_1:1, pwr_lev:3;
 	uint8_t	spare2:1, ps_cap:1, ss_scr:2, sm_cap:1, vbs:1, vgcs:1, fc:1;
 	uint8_t	cm3:1, spare4:1, lcsva_cap:1, spare3:1, solsa:1, cmsp:1, a5_3:1, a5_2:1;
@@ -280,7 +280,7 @@
 	uint8_t	w16:6,
 		 w15_lo:2;
 #elif OSMO_IS_BIG_ENDIAN
-/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianess.py) */
+/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianness.py) */
 	uint8_t	form_id:5, f0:1, w1_hi:2;
 	uint8_t	w1_lo;
 	uint8_t	w2_hi;
@@ -335,7 +335,7 @@
 	uint8_t	w17:5,
 		 w16_lo:3;
 #elif OSMO_IS_BIG_ENDIAN
-/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianess.py) */
+/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianness.py) */
 	uint8_t	form_id:7, orig_arfcn_hi:1;
 	uint8_t	orig_arfcn_mid;
 	uint8_t	orig_arfcn_lo:1, w1_hi:7;
@@ -396,7 +396,7 @@
 		 w21:4,
 		 w20_lo:3;
 #elif OSMO_IS_BIG_ENDIAN
-/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianess.py) */
+/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianness.py) */
 	uint8_t	form_id:7, orig_arfcn_hi:1;
 	uint8_t	orig_arfcn_mid;
 	uint8_t	orig_arfcn_lo:1, w1_hi:7;
@@ -459,7 +459,7 @@
 		 w27:3,
 		 w26_lo:1;
 #elif OSMO_IS_BIG_ENDIAN
-/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianess.py) */
+/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianness.py) */
 	uint8_t	form_id:7, orig_arfcn_hi:1;
 	uint8_t	orig_arfcn_mid;
 	uint8_t	orig_arfcn_lo:1, w1:7;
@@ -489,7 +489,7 @@
 		 orig_arfcn_lo:1;
 	uint8_t rrfcn8_111[13];
 #elif OSMO_IS_BIG_ENDIAN
-/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianess.py) */
+/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianness.py) */
 	uint8_t	form_id:7, orig_arfcn_hi:1;
 	uint8_t	orig_arfcn_mid;
 	uint8_t	orig_arfcn_lo:1, rrfcn1_7:7;
@@ -509,7 +509,7 @@
 			uint8_t hsn:6,
 				 maio_low:2;
 #elif OSMO_IS_BIG_ENDIAN
-/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianess.py) */
+/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianness.py) */
 			uint8_t tsc:3, h:1, maio_high:4;
 			uint8_t maio_low:2, hsn:6;
 #endif
@@ -522,7 +522,7 @@
 				 tsc:3;
 			uint8_t arfcn_low;
 #elif OSMO_IS_BIG_ENDIAN
-/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianess.py) */
+/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianness.py) */
 			uint8_t tsc:3, h:1, spare:2, arfcn_high:2;
 			uint8_t arfcn_low;
 #endif
@@ -573,7 +573,7 @@
 	uint8_t	bsic_nc6:6,
 		 bcch_f_nc6_lo:2;
 #elif OSMO_IS_BIG_ENDIAN
-/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianess.py) */
+/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianness.py) */
 	uint8_t	ba_used:1, dtx_used:1, rxlev_full:6;
 	uint8_t	spare:1, meas_valid:1, rxlev_sub:6;
 	uint8_t	spare2:1, rxqual_full:3, rxqual_sub:3, no_nc_n_hi:1;
@@ -616,7 +616,7 @@
 		 m10_2 : 1,
 		 m12_2 : 1;
 #elif OSMO_IS_BIG_ENDIAN
-/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianess.py) */
+/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianness.py) */
 	uint8_t ver:3, nscb:1, icmi:1, spare:1, smod:2;
 	uint8_t m12_2:1, m10_2:1, m7_95:1, m7_40:1, m6_70:1, m5_90:1, m5_15:1, m4_75:1;
 #endif
@@ -629,7 +629,7 @@
 		 spare:2,
 		 atc:1;
 #elif OSMO_IS_BIG_ENDIAN
-/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianess.py) */
+/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianness.py) */
 	uint8_t atc:1, spare:2, power_level:5;
 #endif
 } __attribute__((packed));
@@ -644,7 +644,7 @@
 	uint8_t t2; /* ACC 8-15 barred flags */
 	uint8_t t3; /* ACC 0-7 barred flags */
 #elif OSMO_IS_BIG_ENDIAN
-/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianess.py) */
+/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianness.py) */
 	uint8_t max_trans:2, tx_integer:4, cell_bar:1, re:1;
 	uint8_t t2;
 	uint8_t t3;
@@ -702,7 +702,7 @@
 	uint8_t t2:5,
 		 t3_low:3;
 #elif OSMO_IS_BIG_ENDIAN
-/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianess.py) */
+/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianness.py) */
 	uint8_t ra;
 	uint8_t t1:5, t3_high:3;
 	uint8_t t3_low:3, t2:5;
@@ -717,7 +717,7 @@
 	uint8_t t2:5,
 		 t3_low:3;
 #elif OSMO_IS_BIG_ENDIAN
-/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianess.py) */
+/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianness.py) */
 	uint8_t t1:5, t3_high:3;
 	uint8_t t3_low:3, t2:5;
 #endif
@@ -731,7 +731,7 @@
 		 nci:1,
 		 sync_ie:4;
 #elif OSMO_IS_BIG_ENDIAN
-/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianess.py) */
+/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianness.py) */
 	uint8_t sync_ie:4, nci:1, rot:1, si:2;
 #endif
 } __attribute__((packed));
@@ -797,7 +797,7 @@
 		 arfcn_hi:2;
 	uint8_t arfcn_lo;
 #elif OSMO_IS_BIG_ENDIAN
-/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianess.py) */
+/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianness.py) */
 	uint8_t arfcn_hi:2, ncc:3, bcc:3;
 	uint8_t arfcn_lo;
 #endif
@@ -840,7 +840,7 @@
 	uint8_t mi_len;
 	uint8_t mi[0];
 #elif OSMO_IS_BIG_ENDIAN
-/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianess.py) */
+/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianness.py) */
 	uint8_t key_seq:4, spare:4;
 	union {
 		uint32_t classmark2;
@@ -867,7 +867,7 @@
 	         spare:4;
 	uint8_t rand[16];
 #elif OSMO_IS_BIG_ENDIAN
-/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianess.py) */
+/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianness.py) */
 	uint8_t spare:4, key_seq:4;
 	uint8_t rand[16];
 #endif
@@ -888,7 +888,7 @@
 	uint8_t mi_len;
 	uint8_t mi[0];
 #elif OSMO_IS_BIG_ENDIAN
-/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianess.py) */
+/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianness.py) */
 	uint8_t key_seq:4, type:4;
 	struct gsm48_loc_area_id lai;
 	struct gsm48_classmark1 classmark1;
@@ -912,7 +912,7 @@
 		skip_indicator:4;
 	uint8_t system_information;
 #elif OSMO_IS_BIG_ENDIAN
-/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianess.py) */
+/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianness.py) */
 	uint8_t l2_plen;
 	uint8_t skip_indicator:4, rr_protocol_discriminator:4;
 	uint8_t system_information;
@@ -928,7 +928,7 @@
 		 neci:1,
 		 acs:1;
 #elif OSMO_IS_BIG_ENDIAN
-/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianess.py) */
+/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianness.py) */
 	uint8_t cell_resel_hyst:3, ms_txpwr_max_ccch:5;
 	uint8_t acs:1, neci:1, rxlev_acc_min:6;
 #endif
@@ -947,7 +947,7 @@
 		spare_2 :1;
 	uint8_t t3212;
 #elif OSMO_IS_BIG_ENDIAN
-/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianess.py) */
+/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianness.py) */
 	uint8_t mscr:1, att:1, bs_ag_blks_res:3, ccch_conf:3;
 	uint8_t spare_2:1, cbq3:2, spare_1:2, bs_pa_mfrms:3;
 	uint8_t t3212;
@@ -970,7 +970,7 @@
 	/* either DN-IND or top bit of DTX IND */
 		 d:1;
 #elif OSMO_IS_BIG_ENDIAN
-/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianess.py) */
+/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianness.py) */
 	uint8_t d:1, pwrc:1, dtx:2, radio_link_timeout:4;
 #endif
 } __attribute__ ((packed));
@@ -991,7 +991,7 @@
 	uint8_t mi[0];
 	/* optional priority level */
 #elif OSMO_IS_BIG_ENDIAN
-/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianess.py) */
+/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianness.py) */
 	uint8_t cipher_key_seq:4, cm_service_type:4;
 	union {
 		uint32_t classmark;
@@ -1074,7 +1074,7 @@
 	uint8_t system_information;
 	uint8_t bcch_frequency_list[16];
 #elif OSMO_IS_BIG_ENDIAN
-/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianess.py) */
+/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianness.py) */
 	uint8_t skip_indicator:4, rr_protocol_discriminator:4;
 	uint8_t system_information;
 	uint8_t bcch_frequency_list[16];
@@ -1089,7 +1089,7 @@
 	uint8_t system_information;
 	uint8_t bcch_frequency_list[16];
 #elif OSMO_IS_BIG_ENDIAN
-/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianess.py) */
+/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianness.py) */
         uint8_t skip_indicator:4, rr_protocol_discriminator:4;
 	uint8_t system_information;
 	uint8_t bcch_frequency_list[16];
@@ -1104,7 +1104,7 @@
 	uint8_t system_information;
 	uint8_t bcch_frequency_list[16];
 #elif OSMO_IS_BIG_ENDIAN
-/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianess.py) */
+/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianness.py) */
         uint8_t skip_indicator:4, rr_protocol_discriminator:4;
 	uint8_t system_information;
 	uint8_t bcch_frequency_list[16];
@@ -1123,7 +1123,7 @@
 	uint8_t ncc_permitted;
 	uint8_t rest_octets[0];
 #elif OSMO_IS_BIG_ENDIAN
-/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianess.py) */
+/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianness.py) */
 	uint8_t skip_indicator:4, rr_protocol_discriminator:4;
 	uint8_t system_information;
 	uint16_t cell_identity;
@@ -1142,7 +1142,7 @@
 		l2_header:2;	/* < short layer 2 header : bit(2) > See 3GPP TS 44.006 §6.4a */
 	uint8_t rest_octets[0];	/* < SI10 Rest Octets : bit(160) > See 3GPP TS 44.018 §10.5.2.44 */
 #elif OSMO_IS_BIG_ENDIAN
-/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianess.py) */
+/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianness.py) */
 	uint8_t l2_header:2, msg_type:5, rr_short_pd:1;
 	uint8_t rest_octets[0];
 #endif
@@ -1203,7 +1203,7 @@
 		 cr:1,
 		 spare:3;
 #elif OSMO_IS_BIG_ENDIAN
-/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianess.py) */
+/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianness.py) */
 	uint8_t spare:3, cr:1, alg_id:3, sc:1;
 #endif
 } __attribute__((packed));
@@ -1260,7 +1260,7 @@
 		 cneed2:2;
 	uint8_t data[0];
 #elif OSMO_IS_BIG_ENDIAN
-/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianess.py) */
+/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianness.py) */
 	uint8_t l2_plen;
 	uint8_t proto_discr;
 	uint8_t msg_type;
@@ -1283,7 +1283,7 @@
 	uint32_t tmsi2;
 	uint8_t data[0];
 #elif OSMO_IS_BIG_ENDIAN
-/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianess.py) */
+/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianness.py) */
 	uint8_t l2_plen;
 	uint8_t proto_discr;
 	uint8_t msg_type;
@@ -1313,7 +1313,7 @@
 		 spare2:4;
 	uint8_t rest[0];
 #elif OSMO_IS_BIG_ENDIAN
-/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianess.py) */
+/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianness.py) */
 	uint8_t l2_plen;
 	uint8_t proto_discr;
 	uint8_t msg_type;
@@ -1336,7 +1336,7 @@
 	struct gsm48_classmark2 cm2;
 	uint8_t data[0];
 #elif OSMO_IS_BIG_ENDIAN
-/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianess.py) */
+/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianness.py) */
 	uint8_t spare:5, key_seq:3;
 	uint8_t cm2_len;
 	struct gsm48_classmark2 cm2;
diff --git a/include/osmocom/gsm/protocol/gsm_04_08_gprs.h b/include/osmocom/gsm/protocol/gsm_04_08_gprs.h
index 2bc6164..40c8413 100644
--- a/include/osmocom/gsm/protocol/gsm_04_08_gprs.h
+++ b/include/osmocom/gsm/protocol/gsm_04_08_gprs.h
@@ -128,7 +128,7 @@
 	struct gsm48_ra_id ra_id; /* 10.5.5.15 */
 	uint8_t data[0];
 #elif OSMO_IS_BIG_ENDIAN
-/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianess.py) */
+/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianness.py) */
 	uint8_t upd_result:4, force_stby:4;
 	uint8_t ra_upd_timer;
 	struct gsm48_ra_id ra_id;
@@ -157,7 +157,7 @@
 	struct gsm48_ra_id ra_id; /* 10.5.5.15 */
 	uint8_t data[0];
 #elif OSMO_IS_BIG_ENDIAN
-/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianess.py) */
+/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianness.py) */
 	uint8_t force_stby:4, att_result:4;
 	uint8_t ra_upd_timer;
 	uint8_t radio_prio;
@@ -175,7 +175,7 @@
 		ac_ref_nr:4;	/* 10.5.5.19 */
 	uint8_t data[0];
 #elif OSMO_IS_BIG_ENDIAN
-/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianess.py) */
+/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianness.py) */
 	uint8_t imeisv_req:4, ciph_alg:4;
 	uint8_t ac_ref_nr:4, force_stby:4;
 	uint8_t data[0];
@@ -189,7 +189,7 @@
 		spare:4;
 	uint8_t data[0];
 #elif OSMO_IS_BIG_ENDIAN
-/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianess.py) */
+/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianness.py) */
 	uint8_t spare:4, ac_ref_nr:4;
 	uint8_t data[0];
 #endif
diff --git a/include/osmocom/gsm/protocol/gsm_04_12.h b/include/osmocom/gsm/protocol/gsm_04_12.h
index 3f34ee7..17ac645 100644
--- a/include/osmocom/gsm/protocol/gsm_04_12.h
+++ b/include/osmocom/gsm/protocol/gsm_04_12.h
@@ -23,7 +23,7 @@
 		lpd : 2,
 		spare : 1;
 #elif OSMO_IS_BIG_ENDIAN
-/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianess.py) */
+/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianness.py) */
 	uint8_t	spare:1, lpd:2, lb:1, seq_nr:4;
 #endif
 } __attribute__((packed));
@@ -37,7 +37,7 @@
 	uint8_t cbsms_msg_map[6];
 	uint8_t data[0];
 #elif OSMO_IS_BIG_ENDIAN
-/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianess.py) */
+/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianness.py) */
 	uint8_t type:2, beg_slot_nr:6;
 	uint8_t spare2:1, spare1:1, end_slot_nr:6;
 	uint8_t cbsms_msg_map[6];
diff --git a/include/osmocom/gsm/protocol/gsm_04_14.h b/include/osmocom/gsm/protocol/gsm_04_14.h
index deb474e..dddec51 100644
--- a/include/osmocom/gsm/protocol/gsm_04_14.h
+++ b/include/osmocom/gsm/protocol/gsm_04_14.h
@@ -30,7 +30,7 @@
 		loop_mech:3,
 		tn:3;
 #elif OSMO_IS_BIG_ENDIAN
-/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianess.py) */
+/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianness.py) */
 	uint8_t tn:3, loop_mech:3, chc:2;
 #endif
 } __attribute__((packed));
@@ -43,7 +43,7 @@
 		chc:2,
 		spare:2;
 #elif OSMO_IS_BIG_ENDIAN
-/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianess.py) */
+/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianness.py) */
 	uint8_t spare:2, chc:2, loop_mech:3, err_ind:1;
 #endif
 } __attribute__((packed));
@@ -70,7 +70,7 @@
 		dl_tx_offset:3,
 		_spare:4;
 #elif OSMO_IS_BIG_ENDIAN
-/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianess.py) */
+/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianness.py) */
 	uint16_t d:12,
 		spare:3,
 		l:1;
@@ -86,7 +86,7 @@
 		dl_tx_offset:3,
 		m:1;
 #elif OSMO_IS_BIG_ENDIAN
-/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianess.py) */
+/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianness.py) */
 	uint8_t m:1, dl_tx_offset:3, _spare:4;
 #endif
 } __attribute__((packed));
diff --git a/include/osmocom/gsm/protocol/gsm_08_08.h b/include/osmocom/gsm/protocol/gsm_08_08.h
index eacb954..5060915 100644
--- a/include/osmocom/gsm/protocol/gsm_08_08.h
+++ b/include/osmocom/gsm/protocol/gsm_08_08.h
@@ -54,7 +54,7 @@
 			dlci_spare:3,
 			dlci_cc:2;
 #elif OSMO_IS_BIG_ENDIAN
-/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianess.py) */
+/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianness.py) */
 			uint8_t dlci_cc:2, dlci_spare:3, dlci_sapi:3;
 #endif
 		};
@@ -783,7 +783,7 @@
 	uint8_t error_pointer_bit_spare:4,
 			error_pointer_bit:4;
 #elif OSMO_IS_BIG_ENDIAN
-/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianess.py) */
+/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianness.py) */
 	uint8_t error_pointer_bit:4, error_pointer_bit_spare:4;
 #endif
 	uint8_t msg[0]; /*! received message which provoked the error */
diff --git a/include/osmocom/gsm/protocol/gsm_08_58.h b/include/osmocom/gsm/protocol/gsm_08_58.h
index 7ccd918..85c9b35 100644
--- a/include/osmocom/gsm/protocol/gsm_08_58.h
+++ b/include/osmocom/gsm/protocol/gsm_08_58.h
@@ -126,7 +126,7 @@
 		rxqual:3,
 		reserved:1;
 #elif OSMO_IS_BIG_ENDIAN
-/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianess.py) */
+/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianness.py) */
 	uint8_t reserved:1, rxqual:3, ul_sacch:1, dl_sacch:1, dl_facch_all:1, dl_facch_cmd:1;
 #endif
 } __attribute__ ((packed));
@@ -139,7 +139,7 @@
 		facch_enable:1,
 		sacch_enable:1;
 #elif OSMO_IS_BIG_ENDIAN
-/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianess.py) */
+/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianness.py) */
 	uint8_t sacch_enable:1, facch_enable:1, rxqual:3, overpower_db:3;
 #endif
 } __attribute__ ((packed));
@@ -666,7 +666,7 @@
 	uint8_t def_bcast:1;
 	uint8_t command:4;
 #elif OSMO_IS_BIG_ENDIAN
-/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianess.py) */
+/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianness.py) */
 	uint8_t command:4, def_bcast:1, spare:1, last_block:2;
 #endif
 } __attribute__ ((packed));
@@ -817,7 +817,7 @@
 		ave_method:3;
 	uint8_t params[0];
 #elif OSMO_IS_BIG_ENDIAN
-/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianess.py) */
+/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianness.py) */
 	uint8_t reserved:1, param_id:2, h_reqave:5;
 	uint8_t ave_method:3, h_reqt:5;
 	uint8_t params[0];
@@ -833,7 +833,7 @@
 	uint8_t h_reqt:5,
 		ave_method:3;
 #elif OSMO_IS_BIG_ENDIAN
-/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianess.py) */
+/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianness.py) */
 	uint8_t reserved:2, ave_enabled:1, h_reqave:5;
 	uint8_t ave_method:3, h_reqt:5;
 #endif
@@ -857,7 +857,7 @@
 	uint8_t u_rxqual:3, reserved_u_rxqual:1,
 		l_rxqual:3, reserved_l_rxqual:1;
 #elif OSMO_IS_BIG_ENDIAN
-/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianess.py) */
+/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianness.py) */
 	uint8_t reserved_l_rxlev:2, l_rxlev:6;
 	uint8_t reserved_u_rxlev:2, u_rxlev:6;
 	uint8_t reserved_l_rxqual:1, l_rxqual:3, reserved_u_rxqual:1, u_rxqual:3;
@@ -893,7 +893,7 @@
 	uint8_t ms_range_max:6,
 		reserved_ms_range:2;
 #elif OSMO_IS_BIG_ENDIAN
-/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianess.py) */
+/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianness.py) */
 	uint8_t reserved_l_rxlev_ul:2, l_rxlev_ul_h:6;
 	uint8_t reserved_l_rxlev_dl:2, l_rxlev_dl_h:6;
 	uint8_t reserved_rxlev_ul:2, rxlev_ul_ih:6;
@@ -917,7 +917,7 @@
 	uint8_t pc_interval:5, reserved_pc:3;
 	uint8_t red_step_size:4, inc_step_size:4;
 #elif OSMO_IS_BIG_ENDIAN
-/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianess.py) */
+/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianness.py) */
 	uint8_t reserved_p1:3, p1:5;
 	uint8_t reserved_n1:3, n1:5;
 	uint8_t reserved_p2:3, p2:5;
@@ -939,7 +939,7 @@
 	uint8_t upper_p:5, reserved_upper_p:3;
 	uint8_t upper_n:5, reserved_upper_n:3;
 #elif OSMO_IS_BIG_ENDIAN
-/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianess.py) */
+/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianness.py) */
 	uint8_t reserved_lower_p:3, lower_p:5;
 	uint8_t reserved_lower_n:3, lower_n:5;
 	uint8_t reserved_upper_p:3, upper_p:5;
@@ -980,7 +980,7 @@
 	uint8_t reserved;
 
 #elif OSMO_IS_BIG_ENDIAN
-/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianess.py) */
+/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianness.py) */
 	uint8_t reserved_p5:3, p5:5;
 	uint8_t reserved_n5:3, n5:5;
 	uint8_t reserved_p6:3, p6:5;
@@ -1003,7 +1003,7 @@
 		s:1,
 		reserved1:1;
 #elif OSMO_IS_BIG_ENDIAN
-/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianess.py) */
+/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianness.py) */
 	uint8_t reserved0:2, bsic:6;
 	uint8_t reserved1:1, s:1, ba_used:1, bcch_freq:5;
 #endif
@@ -1018,7 +1018,7 @@
 	uint8_t ms_txpwr_max_def:5,
 		reserved_ms_txpwr_max_def:3;
 #elif OSMO_IS_BIG_ENDIAN
-/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianess.py) */
+/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianness.py) */
 	uint8_t reserved_rxlev_min_def:2, rxlev_min_def:6;
 	uint8_t reserved_ho_margin_def:3, ho_margin_def:5;
 	uint8_t reserved_ms_txpwr_max_def:3, ms_txpwr_max_def:5;
@@ -1031,7 +1031,7 @@
 		sdcch_ho_umts:1,
 		reserved:6;
 #elif OSMO_IS_BIG_ENDIAN
-/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianess.py) */
+/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianness.py) */
 	uint8_t reserved:6, sdcch_ho_umts:1, sdcch_ho_gsm:1;
 #endif
 }__attribute__ ((packed));
@@ -1055,7 +1055,7 @@
 			ms_pwr:5;
 		uint8_t ta;
 #elif OSMO_IS_BIG_ENDIAN
-/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianess.py) */
+/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianness.py) */
 		uint8_t ms_pwr:5, fpc_epc:1, srr_sro:1, reserved:1;
 		uint8_t ta;
 #endif
diff --git a/include/osmocom/gsm/protocol/gsm_23_032.h b/include/osmocom/gsm/protocol/gsm_23_032.h
index a4c0506..6eb65ca 100644
--- a/include/osmocom/gsm/protocol/gsm_23_032.h
+++ b/include/osmocom/gsm/protocol/gsm_23_032.h
@@ -54,7 +54,7 @@
 	uint8_t spare:4,
 		type:4;
 #elif OSMO_IS_BIG_ENDIAN
-/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianess.py) */
+/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianness.py) */
 	uint8_t type:4, spare:4;
 #endif
 } __attribute__ ((packed));
@@ -73,7 +73,7 @@
 	uint8_t unc:7,
 		spare2:1;
 #elif OSMO_IS_BIG_ENDIAN
-/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianess.py) */
+/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianness.py) */
 	struct gad_raw_head h;
 	uint8_t lat[3];
 	uint8_t lon[3];
@@ -94,7 +94,7 @@
 	uint8_t confidence:7,
 		spare3:1;
 #elif OSMO_IS_BIG_ENDIAN
-/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianess.py) */
+/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianness.py) */
 	struct gad_raw_head h;
 	uint8_t lat[3];
 	uint8_t lon[3];
@@ -111,7 +111,7 @@
 		uint8_t num_points:4;
 		uint8_t type:4; /*!< type = GAD_TYPE_POLYGON */
 #elif OSMO_IS_BIG_ENDIAN
-/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianess.py) */
+/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianness.py) */
 		uint8_t type:4, num_points:4;
 #endif
 	} h;
@@ -144,7 +144,7 @@
 	uint8_t confidence:7,
 		spare4:1;
 #elif OSMO_IS_BIG_ENDIAN
-/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianess.py) */
+/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianness.py) */
 	struct gad_raw_head h;
 	uint8_t lat[3];
 	uint8_t lon[3];
@@ -170,7 +170,7 @@
 	uint8_t confidence:7,
 		spare2:1;
 #elif OSMO_IS_BIG_ENDIAN
-/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianess.py) */
+/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianness.py) */
 	struct gad_raw_head h;
 	uint8_t lat[3];
 	uint8_t lon[3];
@@ -194,7 +194,7 @@
 	uint8_t confidence:7,
 		spare1:1;
 #elif OSMO_IS_BIG_ENDIAN
-/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianess.py) */
+/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianness.py) */
 	struct gad_raw_head h;
 	uint8_t lat[4];
 	uint8_t lon[4];
@@ -221,7 +221,7 @@
 	uint8_t v_confidence:7,
 		spare2:1;
 #elif OSMO_IS_BIG_ENDIAN
-/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianess.py) */
+/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianness.py) */
 	struct gad_raw_head h;
 	uint8_t lat[4];
 	uint8_t lon[4];
diff --git a/include/osmocom/gsm/protocol/gsm_23_041.h b/include/osmocom/gsm/protocol/gsm_23_041.h
index 564946c..2a2b006 100644
--- a/include/osmocom/gsm/protocol/gsm_23_041.h
+++ b/include/osmocom/gsm/protocol/gsm_23_041.h
@@ -22,7 +22,7 @@
 		uint8_t num_pages:4,
 			page_nr:4;
 #elif OSMO_IS_BIG_ENDIAN
-/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianess.py) */
+/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianness.py) */
 		uint8_t page_nr:4, num_pages:4;
 #endif
 	} page_param;
diff --git a/include/osmocom/gsm/protocol/gsm_25_415.h b/include/osmocom/gsm/protocol/gsm_25_415.h
index 5d90fd3..5c4dd2b 100644
--- a/include/osmocom/gsm/protocol/gsm_25_415.h
+++ b/include/osmocom/gsm/protocol/gsm_25_415.h
@@ -24,7 +24,7 @@
 	/* payload part */
 	uint8_t payload[0];
 #elif OSMO_IS_BIG_ENDIAN
-/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianess.py) */
+/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianness.py) */
 	uint8_t pdu_type:4, frame_nr:4;
 	uint8_t fqc:2, rfci:6;
 	uint8_t header_crc:6, payload_crc_hi:2;
@@ -47,7 +47,7 @@
 	/* payload part */
 	uint8_t payload[0];
 #elif OSMO_IS_BIG_ENDIAN
-/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianess.py) */
+/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianness.py) */
 	uint8_t pdu_type:4, frame_nr:4;
 	uint8_t fqc:2, rfci:6;
 	uint8_t header_crc:6, spare:2;
@@ -70,7 +70,7 @@
 	/* payload part */
 	uint8_t payload[0];
 #elif OSMO_IS_BIG_ENDIAN
-/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianess.py) */
+/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianness.py) */
 	uint8_t pdu_type:4, ack_nack:2, frame_nr:2;
 	uint8_t mode_version:4, proc_ind:4;
 	uint8_t header_crc:6, payload_crc_hi:2;
@@ -87,7 +87,7 @@
 		lri:1;
 	uint8_t subflow_length[0]; /* 1 or 2 bytes depending on li */
 #elif OSMO_IS_BIG_ENDIAN
-/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianess.py) */
+/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianness.py) */
 	uint8_t lri:1, li:1, rfci:6;
 	uint8_t subflow_length[0];
 #endif
@@ -100,7 +100,7 @@
 		spare:3;
 	uint8_t rfci_data[0]; /* struct iuup_ctrl_init_rfci_hdr* */
 #elif OSMO_IS_BIG_ENDIAN
-/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianess.py) */
+/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianness.py) */
 	uint8_t spare:3, ti:1, num_subflows_per_rfci:3, chain_ind:1;
 	uint8_t rfci_data[0]; /* struct iuup_ctrl_init_rfci_hdr* */
 ;
@@ -113,7 +113,7 @@
 		data_pdu_type:4;
 	uint8_t spare_extension[0];
 #elif OSMO_IS_BIG_ENDIAN
-/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianess.py) */
+/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianness.py) */
 	uint16_t versions_supported;
 	uint8_t data_pdu_type:4, spare:4;
 	uint8_t spare_extension[0];
@@ -128,7 +128,7 @@
 		error_distance:2;
 	uint8_t spare_extension[0];
 #elif OSMO_IS_BIG_ENDIAN
-/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianess.py) */
+/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianness.py) */
 	struct iuup_pdutype14_hdr hdr;
 	uint8_t error_distance:2, error_cause:6;
 	uint8_t spare_extension[0];
@@ -149,7 +149,7 @@
 		error_cause:6;
 	uint8_t spare_extension[0];
 #elif OSMO_IS_BIG_ENDIAN
-/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianess.py) */
+/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianness.py) */
 	struct iuup_pdutype14_hdr hdr;
 	uint8_t error_cause:6, spare:2;
 	uint8_t spare_extension[0];
diff --git a/include/osmocom/gsm/protocol/gsm_44_004.h b/include/osmocom/gsm/protocol/gsm_44_004.h
index 616e436..c30ba0c 100644
--- a/include/osmocom/gsm/protocol/gsm_44_004.h
+++ b/include/osmocom/gsm/protocol/gsm_44_004.h
@@ -12,7 +12,7 @@
 			reserved:1;
 		uint8_t ta;
 #elif OSMO_IS_BIG_ENDIAN
-/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianess.py) */
+/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianness.py) */
 		uint8_t	reserved:1, srr_sro:1, fpc_epc:1, ms_pwr:5;
 		uint8_t ta;
 #endif
diff --git a/include/osmocom/gsm/protocol/gsm_44_318.h b/include/osmocom/gsm/protocol/gsm_44_318.h
index b3942be..f31a80a 100644
--- a/include/osmocom/gsm/protocol/gsm_44_318.h
+++ b/include/osmocom/gsm/protocol/gsm_44_318.h
@@ -162,7 +162,7 @@
 	uint8_t msg_type;
 	uint8_t data[0];
 #elif OSMO_IS_BIG_ENDIAN
-/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianess.py) */
+/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianness.py) */
 	uint16_t len;
 	uint8_t skip_ind:4, pdisc:4;
 	uint8_t msg_type;
@@ -190,7 +190,7 @@
 		spare2:2;
 	uint8_t access_class[2];
 #elif OSMO_IS_BIG_ENDIAN
-/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianess.py) */
+/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianness.py) */
 	uint8_t mscr:1, att:1, dtm:1, gprs:1, nmo:2, ecmc:1, spare:1;
 	uint8_t t3212;
 	uint8_t rac;
