Skip to content
Snippets Groups Projects
Commit 60673b86 authored by Michael Biebl's avatar Michael Biebl Committed by Jan Rybar
Browse files

Turn local modifications of mocklibc into patches and apply them via diff_files

The local copy of mocklibc was changed in
63ee649b
5b8cd1a3
0d78d1e4

Turn those into patches and apply them via the diff_files mechanism.
This requires Meson 0.63.0, so bump the version accordingly.

https://mesonbuild.com/Wrap-dependency-system-manual.html#diff-files
parent 39fdc508
No related branches found
No related tags found
No related merge requests found
......@@ -7,7 +7,7 @@ project(
'prefix=/usr',
'cpp_std=c++17',
],
meson_version: '>= 0.50.0',
meson_version: '>= 0.63.0',
)
pk_version = meson.project_version()
......
......@@ -8,3 +8,5 @@ source_hash = b2236a6af1028414783e9734a46ea051916ec226479d6a55a3bb823bff68f120
patch_url = https://wrapdb.mesonbuild.com/v1/projects/mocklibc/1.0/2/get_zip
patch_filename = mocklibc-1.0-2-wrap.zip
patch_hash = 0280f96a2eeb3c023e5acf4e00cef03d362868218d4a85347ea45137c0ef6c56
diff_files = 0001.patch, 0002.patch, 0003.patch
From: =?UTF-8?q?Miloslav=20Trma=C4=8D?= <mitr@redhat.com>
Date: Sat, 13 Apr 2013 03:19:17 +0200
Subject: [PATCH 1/3] Fix various memory leaks.
The XML_ParserCreate_MM one was found by Florian Weimer in
https://bugzilla.redhat.com/show_bug.cgi?id=888728 .
This should cover everything found by valgrind on the JS authority
test, augmented with a call to
polkit_backend_authority_enumerate_actions() to verify the
XML_ParserCreate_MM case.
https://bugs.freedesktop.org/show_bug.cgi?id=63492
---
src/netgroup.c | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-)
diff --git a/src/netgroup.c b/src/netgroup.c
index f2ee857..bc99555 100644
--- a/src/netgroup.c
+++ b/src/netgroup.c
@@ -122,7 +122,10 @@ struct netgroup *netgroup_parse_all() {
char * line = NULL;
ssize_t line_size = getline(&line, &line_alloc, stream);
if (line_size == -1)
- break;
+ {
+ free(line);
+ break;
+ }
struct netgroup *nextgroup = netgroup_parse_line(line);
free(line);
--
2.43.0
From: Colin Walters <walters@verbum.org>
Date: Wed, 3 Jun 2015 16:31:12 -0400
Subject: [PATCH 2/3] tests: Correct boundary test for overflow
The offset has to be strictly less than the max.
https://bugs.freedesktop.org/show_bug.cgi?id=87716
---
src/netgroup.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/netgroup.c b/src/netgroup.c
index bc99555..06a8a89 100644
--- a/src/netgroup.c
+++ b/src/netgroup.c
@@ -326,7 +326,7 @@ struct entry *netgroup_iter_next(struct netgroup_iter *iter) {
// Grow the stack
iter->depth++;
- if (iter->depth > NETGROUP_MAX_DEPTH) {
+ if (iter->depth >= NETGROUP_MAX_DEPTH) {
iter->depth = -1;
return NULL; // Too much recursion
}
--
2.43.0
From: Vincent Mihalkovic <vmihalko@redhat.com>
Date: Fri, 8 Mar 2024 14:04:33 +0100
Subject: [PATCH 3/3] mocklibc: move the print_indent function to the file
where it is used
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
This fixes build error with GCC >= 14 and clang >= 17,
failing on:
```
../subprojects/mocklibc-1.0/src/netgroup-debug.c:25:3: error: implicit declaration of function ‘print_indent’ [-Wimplicit-function-declaration]
25 | print_indent(stream, indent);
| ^~~~~~~~~~~~
```
Closes: #6
---
src/netgroup-debug.c | 11 +++++++++++
src/netgroup.c | 11 -----------
2 files changed, 11 insertions(+), 11 deletions(-)
diff --git a/src/netgroup-debug.c b/src/netgroup-debug.c
index 81d6e72..46e5b25 100644
--- a/src/netgroup-debug.c
+++ b/src/netgroup-debug.c
@@ -21,6 +21,17 @@
#include <stdio.h>
#include <stdlib.h>
+/**
+ * Print a varaible indentation to the stream.
+ * @param stream Stream to print to
+ * @param indent Number of indents to use
+ */
+static void print_indent(FILE *stream, unsigned int indent) {
+ int i;
+ for (i = 0; i < indent; i++)
+ fprintf(stream, " ");
+}
+
void netgroup_debug_print_entry(struct entry *entry, FILE *stream, unsigned int indent) {
print_indent(stream, indent);
diff --git a/src/netgroup.c b/src/netgroup.c
index 06a8a89..e16e451 100644
--- a/src/netgroup.c
+++ b/src/netgroup.c
@@ -71,17 +71,6 @@ static char *parser_copy_word(char **cur) {
return result;
}
-/**
- * Print a varaible indentation to the stream.
- * @param stream Stream to print to
- * @param indent Number of indents to use
- */
-void print_indent(FILE *stream, unsigned int indent) {
- int i;
- for (i = 0; i < indent; i++)
- fprintf(stream, " ");
-}
-
/**
* Connect entries with 'child' type to their child entries.
* @param headentry Head of list of entries that need to be connected
--
2.43.0
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment