Skip to contentSkip to conversation

cryptsetup: fix build with pre C11 toolchains

PATCH New Baruch Siach 4 participants 10 messages Aug 15, 2018 – Aug 23, 2018

lore
Share & tools
lore
#0 lore raw

PATCH 1/1 cryptsetup: fix build with pre C11 toolchains

Add a patch removing a redefined typedef. Redefinition of typedef, even to the same type, used to be illegal before C11.

Fixes:
http://autobuild.buildroot.net/results/93b/93b300a62f2ddbad66eab08e25fc3225969f224b/
http://autobuild.buildroot.net/results/6c6/6c6092d633400498ee5b8090733a949a9632e473/
http://autobuild.buildroot.net/results/f46/f46ef6123b5fa92753ff534b4ef7bea3f53ac388/

---
Hi Hollis,

Can you git this a run on your autobuilder? I would like to verify that it actually fixes the problem before I send the patch upstream.

Thanks,
baruch

---
 .../0001-Remove-json_object-typedef.patch     | 46 +++++++++++++++++++
 1 file changed, 46 insertions(+)
 create mode 100644 package/cryptsetup/0001-Remove-json_object-typedef.patch
package/cryptsetup/0001-Remove-json_object-typedef.patch new file +46 -0
new file mode 100644
index 000000000000..fa865314a7da
@@ -0,0 +1,46 @@
+From 567e7f8664c621f8aeaa95d9f4ab4b590574f572 Mon Sep 17 00:00:00 2001
+From: Baruch Siach <[email protected]>
+Date: Wed, 15 Aug 2018 14:13:46 +0300
+Subject: [PATCH] Remove json_object typedef
+
+The json-c header already defines the same typedef. While C11 allows
+typedef redefinition to the same type, older versions of gcc disallow
+that.
+
+In file included from lib/luks2/luks2_internal.h:32,
+                 from lib/luks2/luks2_disk_metadata.c:24:
+lib/luks2/luks2.h:86: error: redefinition of typedef 'json_object'
+
+Signed-off-by: Baruch Siach <[email protected]>
+---
+ lib/luks2/luks2.h | 1 -
+ lib/setup.c       | 1 +
+ 2 files changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/lib/luks2/luks2.h b/lib/luks2/luks2.h
+index ee57b41ba974..25e36190da45 100644
+--- a/lib/luks2/luks2.h
++++ b/lib/luks2/luks2.h
+@@ -83,7 +83,6 @@ struct luks2_hdr_disk {
+ /*
+  * LUKS2 header in-memory.
+  */
+-typedef struct json_object json_object;
+ struct luks2_hdr {
+ 	size_t		hdr_size;
+ 	uint64_t	seqid;
+diff --git a/lib/setup.c b/lib/setup.c
+index fddbe7ef7897..856f6e80f465 100644
+--- a/lib/setup.c
++++ b/lib/setup.c
+@@ -28,6 +28,7 @@
+ #include <sys/utsname.h>
+ #include <fcntl.h>
+ #include <errno.h>
++#include <json-c/json.h>
+ 
+ #include "libcryptsetup.h"
+ #include "luks.h"
+-- 
+2.18.0
+
Signature · 1 line
2.18.0
#1 lore raw

PATCH 1/1 cryptsetup: fix build with pre C11 toolchains

I can manually place this in the autobuilder's checkout of buildroot, but maybe it will pick some arbitrary branch the next time it runs. Is there a better way to try it out?

Hollis Blanchard
Mentor Graphics Emulation Division

Quoted 74 lines · Baruch Siach

Add a patch removing a redefined typedef. Redefinition of typedef, even to the same type, used to be illegal before C11.

Fixes:
http://autobuild.buildroot.net/results/93b/93b300a62f2ddbad66eab08e25fc3225969f224b/
http://autobuild.buildroot.net/results/6c6/6c6092d633400498ee5b8090733a949a9632e473/
http://autobuild.buildroot.net/results/f46/f46ef6123b5fa92753ff534b4ef7bea3f53ac388/

---
Hi Hollis,

Can you git this a run on your autobuilder? I would like to verify that it actually fixes the problem before I send the patch upstream.

Thanks,
baruch

---
  .../0001-Remove-json_object-typedef.patch     | 46 +++++++++++++++++++
  1 file changed, 46 insertions(+)

create mode 100644 package/cryptsetup/0001-Remove-json_object-typedef.patch

package/cryptsetup/0001-Remove-json_object-typedef.patch new file +46 -0
new file mode 100644
index 000000000000..fa865314a7da
@@ -0,0 +1,46 @@
+From 567e7f8664c621f8aeaa95d9f4ab4b590574f572 Mon Sep 17 00:00:00 2001
+From: Baruch Siach <[email protected]>
+Date: Wed, 15 Aug 2018 14:13:46 +0300
+Subject: [PATCH] Remove json_object typedef
+
+The json-c header already defines the same typedef. While C11 allows
+typedef redefinition to the same type, older versions of gcc disallow
+that.
+
+In file included from lib/luks2/luks2_internal.h:32,
+                 from lib/luks2/luks2_disk_metadata.c:24:
+lib/luks2/luks2.h:86: error: redefinition of typedef 'json_object'
+
+Signed-off-by: Baruch Siach <[email protected]>
+---
+ lib/luks2/luks2.h | 1 -
+ lib/setup.c       | 1 +
+ 2 files changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/lib/luks2/luks2.h b/lib/luks2/luks2.h
+index ee57b41ba974..25e36190da45 100644
+--- a/lib/luks2/luks2.h
++++ b/lib/luks2/luks2.h
+@@ -83,7 +83,6 @@ struct luks2_hdr_disk {
+ /*
+  * LUKS2 header in-memory.
+  */
+-typedef struct json_object json_object;
+ struct luks2_hdr {
+ 	size_t		hdr_size;
+ 	uint64_t	seqid;
+diff --git a/lib/setup.c b/lib/setup.c
+index fddbe7ef7897..856f6e80f465 100644
+--- a/lib/setup.c
++++ b/lib/setup.c
+@@ -28,6 +28,7 @@
+ #include <sys/utsname.h>
+ #include <fcntl.h>
+ #include <errno.h>
++#include <json-c/json.h>
+
+ #include "libcryptsetup.h"
+ #include "luks.h"
+--
+2.18.0
+
#2 lore raw

PATCH 1/1 cryptsetup: fix build with pre C11 toolchains

Hollis,

Quoted 4 lines · Hollis Blanchard

I can manually place this in the autobuilder's checkout of buildroot, but maybe it will pick some arbitrary branch the next time it runs. Is there a better way to try it out?

https://git.busybox.net/buildroot-test/tree/utils/br-reproduce-build

using the hash from one of those failing commits will reproduce the build. then you can git am the patch in a verify the fix.

Quoted 84 lines

Hollis Blanchard
Mentor Graphics Emulation Division

Quoted 64 lines · Baruch Siach

Add a patch removing a redefined typedef. Redefinition of typedef, even to the same type, used to be illegal before C11.

Fixes:
http://autobuild.buildroot.net/results/93b/93b300a62f2ddbad66eab08e25fc3225969f224b/
http://autobuild.buildroot.net/results/6c6/6c6092d633400498ee5b8090733a949a9632e473/
http://autobuild.buildroot.net/results/f46/f46ef6123b5fa92753ff534b4ef7bea3f53ac388/

---
Hi Hollis,

Can you git this a run on your autobuilder? I would like to verify that it actually fixes the problem before I send the patch upstream.

Thanks,
baruch

---
  .../0001-Remove-json_object-typedef.patch     | 46 +++++++++++++++++++
  1 file changed, 46 insertions(+)

create mode 100644 package/cryptsetup/0001-Remove-json_object-typedef.patch

package/cryptsetup/0001-Remove-json_object-typedef.patch new file +36 -0
new file mode 100644
index 000000000000..fa865314a7da
@@ -0,0 +1,46 @@
+From 567e7f8664c621f8aeaa95d9f4ab4b590574f572 Mon Sep 17 00:00:00 2001
+From: Baruch Siach <[email protected]>
+Date: Wed, 15 Aug 2018 14:13:46 +0300
+Subject: [PATCH] Remove json_object typedef
+
+The json-c header already defines the same typedef. While C11 allows
+typedef redefinition to the same type, older versions of gcc disallow
+that.
+
+In file included from lib/luks2/luks2_internal.h:32,
+                 from lib/luks2/luks2_disk_metadata.c:24:
+lib/luks2/luks2.h:86: error: redefinition of typedef 'json_object'
+
+Signed-off-by: Baruch Siach <[email protected]>
+---
+ lib/luks2/luks2.h | 1 -
+ lib/setup.c       | 1 +
+ 2 files changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/lib/luks2/luks2.h b/lib/luks2/luks2.h
+index ee57b41ba974..25e36190da45 100644
+--- a/lib/luks2/luks2.h
++++ b/lib/luks2/luks2.h
+@@ -83,7 +83,6 @@ struct luks2_hdr_disk {
+ /*
+  * LUKS2 header in-memory.
+  */
+-typedef struct json_object json_object;
+ struct luks2_hdr {
+     size_t          hdr_size;
+     uint64_t        seqid;
+diff --git a/lib/setup.c b/lib/setup.c
+index fddbe7ef7897..856f6e80f465 100644
+--- a/lib/setup.c
++++ b/lib/setup.c
+@@ -28,6 +28,7 @@

package/cryptsetup/0001-Remove-json_object-typedef.patch line 46

Quoted 10 lines
package/cryptsetup/0001-Remove-json_object-typedef.patch new file +10 -0
+ #include <sys/utsname.h>
+ #include <fcntl.h>
+ #include <errno.h>
++#include <json-c/json.h>
+
+ #include "libcryptsetup.h"
+ #include "luks.h"
+--
+2.18.0
+

_______________________________________________
buildroot mailing list
buildroot at busybox.net
http://lists.busybox.net/mailman/listinfo/buildroot

Signature · 8 lines
Matthew L Weber / Pr Software Engineer
Airborne Information Systems / RC Linux Secure Platforms
MS 131-100, C Ave NE, Cedar Rapids, IA, 52498, USA
www.rockwellcollins.com

Note: Any Export License Required Information and License Restricted
Third Party Intellectual Property (TPIP) content must be encrypted and
sent to matthew.weber at corp.rockwellcollins.com.
#3 lore raw

PATCH 1/1 cryptsetup: fix build with pre C11 toolchains

In reply to Hollis Blanchard

Hi Hollis,

Quoted 3 lines · Hollis Blanchard

I can manually place this in the autobuilder's checkout of buildroot, but maybe it will pick some arbitrary branch the next time it runs. Is there a better way to try it out?

No need to run it under the autobuilder script, only on the same machine. Just do a separate checkout of buildroot, set a config (any config), and do 'make host-cryptsetup'. Verify that the build fails with the error mentioned in the patch. Then, apply this patch, delete output/build/host-cryptsetup-2.0.3/, and do 'make host-cryptsetup' again.

baruch

Quoted 75 lines · Baruch Siach
Quoted 74 lines

Add a patch removing a redefined typedef. Redefinition of typedef, even to the same type, used to be illegal before C11.

Fixes:
http://autobuild.buildroot.net/results/93b/93b300a62f2ddbad66eab08e25fc3225969f224b/
http://autobuild.buildroot.net/results/6c6/6c6092d633400498ee5b8090733a949a9632e473/
http://autobuild.buildroot.net/results/f46/f46ef6123b5fa92753ff534b4ef7bea3f53ac388/

---
Hi Hollis,

Can you git this a run on your autobuilder? I would like to verify that it actually fixes the problem before I send the patch upstream.

Thanks,
baruch

---
  .../0001-Remove-json_object-typedef.patch     | 46 +++++++++++++++++++
  1 file changed, 46 insertions(+)

create mode 100644 package/cryptsetup/0001-Remove-json_object-typedef.patch

package/cryptsetup/0001-Remove-json_object-typedef.patch new file +46 -0
new file mode 100644
index 000000000000..fa865314a7da
@@ -0,0 +1,46 @@
+From 567e7f8664c621f8aeaa95d9f4ab4b590574f572 Mon Sep 17 00:00:00 2001
+From: Baruch Siach <[email protected]>
+Date: Wed, 15 Aug 2018 14:13:46 +0300
+Subject: [PATCH] Remove json_object typedef
+
+The json-c header already defines the same typedef. While C11 allows
+typedef redefinition to the same type, older versions of gcc disallow
+that.
+
+In file included from lib/luks2/luks2_internal.h:32,
+                 from lib/luks2/luks2_disk_metadata.c:24:
+lib/luks2/luks2.h:86: error: redefinition of typedef 'json_object'
+
+Signed-off-by: Baruch Siach <[email protected]>
+---
+ lib/luks2/luks2.h | 1 -
+ lib/setup.c       | 1 +
+ 2 files changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/lib/luks2/luks2.h b/lib/luks2/luks2.h
+index ee57b41ba974..25e36190da45 100644
+--- a/lib/luks2/luks2.h
++++ b/lib/luks2/luks2.h
+@@ -83,7 +83,6 @@ struct luks2_hdr_disk {
+ /*
+  * LUKS2 header in-memory.
+  */
+-typedef struct json_object json_object;
+ struct luks2_hdr {
+ 	size_t		hdr_size;
+ 	uint64_t	seqid;
+diff --git a/lib/setup.c b/lib/setup.c
+index fddbe7ef7897..856f6e80f465 100644
+--- a/lib/setup.c
++++ b/lib/setup.c
+@@ -28,6 +28,7 @@
+ #include <sys/utsname.h>
+ #include <fcntl.h>
+ #include <errno.h>
++#include <json-c/json.h>
+
+ #include "libcryptsetup.h"
+ #include "luks.h"
+--
+2.18.0
+
Signature · 3 lines
     http://baruch.siach.name/blog/                  ~. .~   Tk Open Systems
=}------------------------------------------------ooO--U--Ooo------------{=
   - baruch at tkos.co.il - tel: +972.52.368.4656, http://www.tkos.co.il -
#4 lore raw

PATCH 1/1 cryptsetup: fix build with pre C11 toolchains

In reply to Baruch Siach

Worked for me.

Hollis Blanchard
Mentor Graphics Emulation Division

Quoted 74 lines · Baruch Siach

Add a patch removing a redefined typedef. Redefinition of typedef, even to the same type, used to be illegal before C11.

Fixes:
http://autobuild.buildroot.net/results/93b/93b300a62f2ddbad66eab08e25fc3225969f224b/
http://autobuild.buildroot.net/results/6c6/6c6092d633400498ee5b8090733a949a9632e473/
http://autobuild.buildroot.net/results/f46/f46ef6123b5fa92753ff534b4ef7bea3f53ac388/

---
Hi Hollis,

Can you git this a run on your autobuilder? I would like to verify that it actually fixes the problem before I send the patch upstream.

Thanks,
baruch

---
  .../0001-Remove-json_object-typedef.patch     | 46 +++++++++++++++++++
  1 file changed, 46 insertions(+)

create mode 100644 package/cryptsetup/0001-Remove-json_object-typedef.patch

package/cryptsetup/0001-Remove-json_object-typedef.patch new file +46 -0
new file mode 100644
index 000000000000..fa865314a7da
@@ -0,0 +1,46 @@
+From 567e7f8664c621f8aeaa95d9f4ab4b590574f572 Mon Sep 17 00:00:00 2001
+From: Baruch Siach <[email protected]>
+Date: Wed, 15 Aug 2018 14:13:46 +0300
+Subject: [PATCH] Remove json_object typedef
+
+The json-c header already defines the same typedef. While C11 allows
+typedef redefinition to the same type, older versions of gcc disallow
+that.
+
+In file included from lib/luks2/luks2_internal.h:32,
+                 from lib/luks2/luks2_disk_metadata.c:24:
+lib/luks2/luks2.h:86: error: redefinition of typedef 'json_object'
+
+Signed-off-by: Baruch Siach <[email protected]>
+---
+ lib/luks2/luks2.h | 1 -
+ lib/setup.c       | 1 +
+ 2 files changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/lib/luks2/luks2.h b/lib/luks2/luks2.h
+index ee57b41ba974..25e36190da45 100644
+--- a/lib/luks2/luks2.h
++++ b/lib/luks2/luks2.h
+@@ -83,7 +83,6 @@ struct luks2_hdr_disk {
+ /*
+  * LUKS2 header in-memory.
+  */
+-typedef struct json_object json_object;
+ struct luks2_hdr {
+ 	size_t		hdr_size;
+ 	uint64_t	seqid;
+diff --git a/lib/setup.c b/lib/setup.c
+index fddbe7ef7897..856f6e80f465 100644
+--- a/lib/setup.c
++++ b/lib/setup.c
+@@ -28,6 +28,7 @@
+ #include <sys/utsname.h>
+ #include <fcntl.h>
+ #include <errno.h>
++#include <json-c/json.h>
+
+ #include "libcryptsetup.h"
+ #include "luks.h"
+--
+2.18.0
+
#5 lore raw

PATCH 1/1 cryptsetup: fix build with pre C11 toolchains

Hi Hollis,

Quoted 3 lines · Hollis Blanchard

Worked for me.

Thanks for the confirmation. I sent the patch upstream:

https://gitlab.com/cryptsetup/cryptsetup/merge_requests/49

I'm not sure upstream would like the namespace pollution in this patch.

baruch

Quoted 75 lines · Baruch Siach
Quoted 74 lines

Add a patch removing a redefined typedef. Redefinition of typedef, even to the same type, used to be illegal before C11.

Fixes:
http://autobuild.buildroot.net/results/93b/93b300a62f2ddbad66eab08e25fc3225969f224b/
http://autobuild.buildroot.net/results/6c6/6c6092d633400498ee5b8090733a949a9632e473/
http://autobuild.buildroot.net/results/f46/f46ef6123b5fa92753ff534b4ef7bea3f53ac388/

---
Hi Hollis,

Can you git this a run on your autobuilder? I would like to verify that it actually fixes the problem before I send the patch upstream.

Thanks,
baruch

---
  .../0001-Remove-json_object-typedef.patch     | 46 +++++++++++++++++++
  1 file changed, 46 insertions(+)

create mode 100644 package/cryptsetup/0001-Remove-json_object-typedef.patch

package/cryptsetup/0001-Remove-json_object-typedef.patch new file +46 -0
new file mode 100644
index 000000000000..fa865314a7da
@@ -0,0 +1,46 @@
+From 567e7f8664c621f8aeaa95d9f4ab4b590574f572 Mon Sep 17 00:00:00 2001
+From: Baruch Siach <[email protected]>
+Date: Wed, 15 Aug 2018 14:13:46 +0300
+Subject: [PATCH] Remove json_object typedef
+
+The json-c header already defines the same typedef. While C11 allows
+typedef redefinition to the same type, older versions of gcc disallow
+that.
+
+In file included from lib/luks2/luks2_internal.h:32,
+                 from lib/luks2/luks2_disk_metadata.c:24:
+lib/luks2/luks2.h:86: error: redefinition of typedef 'json_object'
+
+Signed-off-by: Baruch Siach <[email protected]>
+---
+ lib/luks2/luks2.h | 1 -
+ lib/setup.c       | 1 +
+ 2 files changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/lib/luks2/luks2.h b/lib/luks2/luks2.h
+index ee57b41ba974..25e36190da45 100644
+--- a/lib/luks2/luks2.h
++++ b/lib/luks2/luks2.h
+@@ -83,7 +83,6 @@ struct luks2_hdr_disk {
+ /*
+  * LUKS2 header in-memory.
+  */
+-typedef struct json_object json_object;
+ struct luks2_hdr {
+ 	size_t		hdr_size;
+ 	uint64_t	seqid;
+diff --git a/lib/setup.c b/lib/setup.c
+index fddbe7ef7897..856f6e80f465 100644
+--- a/lib/setup.c
++++ b/lib/setup.c
+@@ -28,6 +28,7 @@
+ #include <sys/utsname.h>
+ #include <fcntl.h>
+ #include <errno.h>
++#include <json-c/json.h>
+
+ #include "libcryptsetup.h"
+ #include "luks.h"
+--
+2.18.0
+
Signature · 3 lines
     http://baruch.siach.name/blog/                  ~. .~   Tk Open Systems
=}------------------------------------------------ooO--U--Ooo------------{=
   - baruch at tkos.co.il - tel: +972.52.368.4656, http://www.tkos.co.il -
#6 lore raw

PATCH 1/1 cryptsetup: fix build with pre C11 toolchains

Hi Hillis,

Quoted 10 lines · Baruch Siach
Quoted 3 lines · Hollis Blanchard

Worked for me.

Thanks for the confirmation. I sent the patch upstream:

https://gitlab.com/cryptsetup/cryptsetup/merge_requests/49

I'm not sure upstream would like the namespace pollution in this patch.

As I expected, Milan Broz, cryptsetup upstream developer, didn't like the namespace violation that this patch introduces. But he is also unable to reproduce the issue on his CentOS6 system. So we might end up with no upstream acceptable solution. Can you help Milan in reproducing the build failure?

Thanks,
baruch

Quoted 74 lines
Quoted 74 lines · Baruch Siach
Quoted 73 lines

Add a patch removing a redefined typedef. Redefinition of typedef, even to the same type, used to be illegal before C11.

Fixes:
http://autobuild.buildroot.net/results/93b/93b300a62f2ddbad66eab08e25fc3225969f224b/
http://autobuild.buildroot.net/results/6c6/6c6092d633400498ee5b8090733a949a9632e473/
http://autobuild.buildroot.net/results/f46/f46ef6123b5fa92753ff534b4ef7bea3f53ac388/

---
Hi Hollis,

Can you git this a run on your autobuilder? I would like to verify that it actually fixes the problem before I send the patch upstream.

Thanks,
baruch

---
  .../0001-Remove-json_object-typedef.patch     | 46 +++++++++++++++++++
  1 file changed, 46 insertions(+)

create mode 100644 package/cryptsetup/0001-Remove-json_object-typedef.patch

package/cryptsetup/0001-Remove-json_object-typedef.patch new file +45 -0
new file mode 100644
index 000000000000..fa865314a7da
@@ -0,0 +1,46 @@
+From 567e7f8664c621f8aeaa95d9f4ab4b590574f572 Mon Sep 17 00:00:00 2001
+From: Baruch Siach <[email protected]>
+Date: Wed, 15 Aug 2018 14:13:46 +0300
+Subject: [PATCH] Remove json_object typedef
+
+The json-c header already defines the same typedef. While C11 allows
+typedef redefinition to the same type, older versions of gcc disallow
+that.
+
+In file included from lib/luks2/luks2_internal.h:32,
+                 from lib/luks2/luks2_disk_metadata.c:24:
+lib/luks2/luks2.h:86: error: redefinition of typedef 'json_object'
+
+Signed-off-by: Baruch Siach <[email protected]>
+---
+ lib/luks2/luks2.h | 1 -
+ lib/setup.c       | 1 +
+ 2 files changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/lib/luks2/luks2.h b/lib/luks2/luks2.h
+index ee57b41ba974..25e36190da45 100644
+--- a/lib/luks2/luks2.h
++++ b/lib/luks2/luks2.h
+@@ -83,7 +83,6 @@ struct luks2_hdr_disk {
+ /*
+  * LUKS2 header in-memory.
+  */
+-typedef struct json_object json_object;
+ struct luks2_hdr {
+ 	size_t		hdr_size;
+ 	uint64_t	seqid;
+diff --git a/lib/setup.c b/lib/setup.c
+index fddbe7ef7897..856f6e80f465 100644
+--- a/lib/setup.c
++++ b/lib/setup.c
+@@ -28,6 +28,7 @@
+ #include <sys/utsname.h>
+ #include <fcntl.h>
+ #include <errno.h>
++#include <json-c/json.h>
+
+ #include "libcryptsetup.h"
+ #include "luks.h"
+--
+2.18.0
Signature · 3 lines
     http://baruch.siach.name/blog/                  ~. .~   Tk Open Systems
=}------------------------------------------------ooO--U--Ooo------------{=
   - baruch at tkos.co.il - tel: +972.2.679.5364, http://www.tkos.co.il -
#7 lore raw

PATCH 1/1 cryptsetup: fix build with pre C11 toolchains

Quoted 9 lines · Baruch Siach

Hi Hillis,

Quoted 6 lines · Baruch Siach
Quoted 3 lines · Hollis Blanchard

Worked for me.

Thanks for the confirmation. I sent the patch upstream:

Quoted 7 lines
Quoted 3 lines

https://gitlab.com/cryptsetup/cryptsetup/merge_requests/49

I'm not sure upstream would like the namespace pollution in this patch.

As I expected, Milan Broz, cryptsetup upstream developer, didn't like the namespace violation that this patch introduces. But he is also unable to reproduce the issue on his CentOS6 system. So we might end up with no upstream acceptable solution. Can you help Milan in reproducing the build failure?

Yes, I posted a comment to your merge request, and will try to help further there.

Hollis Blanchard
Mentor Graphics Emulation Division

#8 lore raw

PATCH 1/1 cryptsetup: fix build with pre C11 toolchains

In reply to Baruch Siach
Quoted 10 lines
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line

"Baruch" == Baruch Siach <[email protected]> writes:

Add a patch removing a redefined typedef. Redefinition of typedef, even to the same type, used to be illegal before C11.

Fixes:
http://autobuild.buildroot.net/results/93b/93b300a62f2ddbad66eab08e25fc3225969f224b/
http://autobuild.buildroot.net/results/6c6/6c6092d633400498ee5b8090733a949a9632e473/
http://autobuild.buildroot.net/results/f46/f46ef6123b5fa92753ff534b4ef7bea3f53ac388/

Quoted 6 lines

---
Hi Hollis,

Can you git this a run on your autobuilder? I would like to verify that it actually fixes the problem before I send the patch upstream.

Committed, thanks.

I see that discussion are ongoing with upstream, but we can adjust the patch later if/when changes are needed.

Signature · 1 line
Bye, Peter Korsgaard
#9 lore raw

PATCH 1/1 cryptsetup: fix build with pre C11 toolchains

In reply to Baruch Siach
Quoted 11 lines
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line

"Baruch" == Baruch Siach <[email protected]> writes:

Add a patch removing a redefined typedef. Redefinition of typedef, even to the same type, used to be illegal before C11.

Fixes:
http://autobuild.buildroot.net/results/93b/93b300a62f2ddbad66eab08e25fc3225969f224b/
http://autobuild.buildroot.net/results/6c6/6c6092d633400498ee5b8090733a949a9632e473/
http://autobuild.buildroot.net/results/f46/f46ef6123b5fa92753ff534b4ef7bea3f53ac388/

Committed to 2018.02.x and 2018.05.x, thanks.

Signature · 1 line
Bye, Peter Korsgaard