Increase binary labels strings to accomodate store paths
This commit is contained in:
parent
4acaab5244
commit
7dc432ce33
|
@ -0,0 +1,98 @@
|
||||||
|
commit 2d76b3271fa826a97c3974b7e67f2799e9ba448d
|
||||||
|
Author: Emery Hemingway <ehmry@posteo.net>
|
||||||
|
Date: Fri May 29 18:42:57 2020 +0530
|
||||||
|
|
||||||
|
Use 128-byte strings for session labels
|
||||||
|
|
||||||
|
Sixty-four bytes is insufficient for Nix store paths.
|
||||||
|
|
||||||
|
diff --git a/repos/base/include/base/child.h b/repos/base/include/base/child.h
|
||||||
|
index 8c7b33a9d9..3bd6483547 100644
|
||||||
|
--- a/repos/base/include/base/child.h
|
||||||
|
+++ b/repos/base/include/base/child.h
|
||||||
|
@@ -44,9 +44,9 @@ namespace Genode {
|
||||||
|
*/
|
||||||
|
struct Genode::Child_policy
|
||||||
|
{
|
||||||
|
- typedef String<64> Name;
|
||||||
|
- typedef String<64> Binary_name;
|
||||||
|
- typedef String<64> Linker_name;
|
||||||
|
+ typedef String<128> Name;
|
||||||
|
+ typedef String<128> Binary_name;
|
||||||
|
+ typedef String<128> Linker_name;
|
||||||
|
|
||||||
|
virtual ~Child_policy() { }
|
||||||
|
|
||||||
|
@@ -407,7 +407,7 @@ class Genode::Child : protected Rpc_object<Parent>,
|
||||||
|
|
||||||
|
Id_space<Parent::Client>::Id const _client_id;
|
||||||
|
|
||||||
|
- typedef String<64> Label;
|
||||||
|
+ typedef String<128> Label;
|
||||||
|
|
||||||
|
Args const _args;
|
||||||
|
|
||||||
|
diff --git a/repos/base/include/base/shared_object.h b/repos/base/include/base/shared_object.h
|
||||||
|
index f4dd1622fe..7ffe5fa34c 100644
|
||||||
|
--- a/repos/base/include/base/shared_object.h
|
||||||
|
+++ b/repos/base/include/base/shared_object.h
|
||||||
|
@@ -128,7 +128,7 @@ class Genode::Dynamic_linker
|
||||||
|
struct Object_info
|
||||||
|
{
|
||||||
|
/* name of shared library, or "binary" for the main program */
|
||||||
|
- typedef String<64> Name;
|
||||||
|
+ typedef String<128> Name;
|
||||||
|
Name name;
|
||||||
|
|
||||||
|
Rom_dataspace_capability ds_cap;
|
||||||
|
diff --git a/repos/base/src/lib/ldso/include/file.h b/repos/base/src/lib/ldso/include/file.h
|
||||||
|
index a8875a781e..e06749f7ef 100644
|
||||||
|
--- a/repos/base/src/lib/ldso/include/file.h
|
||||||
|
+++ b/repos/base/src/lib/ldso/include/file.h
|
||||||
|
@@ -98,7 +98,7 @@ struct Linker::Elf_file : File
|
||||||
|
Ram_dataspace_capability ram_cap[Phdr::MAX_PHDR];
|
||||||
|
bool const loaded;
|
||||||
|
|
||||||
|
- typedef String<64> Name;
|
||||||
|
+ typedef String<128> Name;
|
||||||
|
|
||||||
|
Rom_dataspace_capability _rom_dataspace(Name const &name)
|
||||||
|
{
|
||||||
|
diff --git a/repos/libports/src/lib/libc/internal/types.h b/repos/libports/src/lib/libc/internal/types.h
|
||||||
|
index 233da10b47..afaee3f8d7 100644
|
||||||
|
--- a/repos/libports/src/lib/libc/internal/types.h
|
||||||
|
+++ b/repos/libports/src/lib/libc/internal/types.h
|
||||||
|
@@ -23,7 +23,7 @@ namespace Libc {
|
||||||
|
using namespace Genode;
|
||||||
|
|
||||||
|
typedef Genode::uint64_t uint64_t;
|
||||||
|
- typedef String<64> Binary_name;
|
||||||
|
+ typedef String<128> Binary_name;
|
||||||
|
}
|
||||||
|
|
||||||
|
#endif /* _LIBC__INTERNAL__TYPES_H_ */
|
||||||
|
diff --git a/repos/libports/src/lib/libc/kernel.cc b/repos/libports/src/lib/libc/kernel.cc
|
||||||
|
index 430295e7d5..bdb3c66598 100644
|
||||||
|
--- a/repos/libports/src/lib/libc/kernel.cc
|
||||||
|
+++ b/repos/libports/src/lib/libc/kernel.cc
|
||||||
|
@@ -300,7 +300,7 @@ void Libc::Kernel::_clone_state_from_parent()
|
||||||
|
|
||||||
|
/* clone RW segment of a shared library or the binary */
|
||||||
|
if (node.type() == "rw") {
|
||||||
|
- typedef String<64> Name;
|
||||||
|
+ typedef String<128> Name;
|
||||||
|
Name const name = node.attribute_value("name", Name());
|
||||||
|
|
||||||
|
/*
|
||||||
|
diff --git a/repos/os/src/lib/sandbox/child.h b/repos/os/src/lib/sandbox/child.h
|
||||||
|
index 030ccbd66d..5164d33ba5 100644
|
||||||
|
--- a/repos/os/src/lib/sandbox/child.h
|
||||||
|
+++ b/repos/os/src/lib/sandbox/child.h
|
||||||
|
@@ -119,7 +119,6 @@ class Sandbox::Child : Child_policy, Routed_service::Wakeup
|
||||||
|
throw Missing_name_attribute();
|
||||||
|
}
|
||||||
|
|
||||||
|
- typedef String<64> Name;
|
||||||
|
Name const _unique_name { _name_from_xml(_start_node->xml()) };
|
||||||
|
|
||||||
|
static Binary_name _binary_from_xml(Xml_node start_node,
|
|
@ -26,7 +26,7 @@ let
|
||||||
hash = "sha256-5Fd8ywGbDtQF+9yDZ5xAQ7l1Vzh1jQAQeqVj+EtO1us=";
|
hash = "sha256-5Fd8ywGbDtQF+9yDZ5xAQ7l1Vzh1jQAQeqVj+EtO1us=";
|
||||||
};
|
};
|
||||||
nativeBuildInputs = [ expect gnumake tcl ];
|
nativeBuildInputs = [ expect gnumake tcl ];
|
||||||
patches = [ ./LIB.patch ];
|
patches = [ ./LIB.patch ./binary-labels.patch ];
|
||||||
configurePhase = ''
|
configurePhase = ''
|
||||||
patchShebangs ./tool
|
patchShebangs ./tool
|
||||||
substituteInPlace repos/base/etc/tools.conf \
|
substituteInPlace repos/base/etc/tools.conf \
|
||||||
|
|
Loading…
Reference in New Issue