]> git.ipfire.org Git - pakfire.git/log
pakfire.git
2 months agobuffer: Always allocate at least one chunk
Michael Tremer [Sat, 22 Mar 2025 18:21:23 +0000 (18:21 +0000)] 
buffer: Always allocate at least one chunk

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2 months agobuffer: Automatically shrink the buffer
Michael Tremer [Sat, 22 Mar 2025 18:21:02 +0000 (18:21 +0000)] 
buffer: Automatically shrink the buffer

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2 months agobuffer: Correctly compute the new desired length when growing
Michael Tremer [Sat, 22 Mar 2025 18:20:17 +0000 (18:20 +0000)] 
buffer: Correctly compute the new desired length when growing

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2 months agobuffer: Add function to configure the maximum length
Michael Tremer [Sat, 22 Mar 2025 18:10:14 +0000 (18:10 +0000)] 
buffer: Add function to configure the maximum length

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2 months agobuffer: Give the functions slightly better names
Michael Tremer [Sat, 22 Mar 2025 18:07:09 +0000 (18:07 +0000)] 
buffer: Give the functions slightly better names

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2 months agolog stream: Use the new buffer implementation
Michael Tremer [Sat, 22 Mar 2025 18:04:22 +0000 (18:04 +0000)] 
log stream: Use the new buffer implementation

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2 months agobuffer: Create a new generic buffer implementation
Michael Tremer [Sat, 22 Mar 2025 18:03:31 +0000 (18:03 +0000)] 
buffer: Create a new generic buffer implementation

This is used to hold a dynamically growing buffer.

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2 months agolog stream: Expect the callback to consume the entire line
Michael Tremer [Sat, 22 Mar 2025 16:57:36 +0000 (16:57 +0000)] 
log stream: Expect the callback to consume the entire line

This is otherwise getting out of hand and we should not have a place
where this would become an issue.

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2 months agojail: Use log stream to perform line-buffered output
Michael Tremer [Sat, 22 Mar 2025 16:56:59 +0000 (16:56 +0000)] 
jail: Use log stream to perform line-buffered output

This helps us to split the complexity between the PTY and some extra
buffering code.

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2 months agotests: log stream: Stream another line
Michael Tremer [Sat, 22 Mar 2025 16:39:24 +0000 (16:39 +0000)] 
tests: log stream: Stream another line

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2 months agopython: execute: Use the send buffer callback we already have
Michael Tremer [Sat, 22 Mar 2025 16:35:57 +0000 (16:35 +0000)] 
python: execute: Use the send buffer callback we already have

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2 months agolog stream: Move data as second argument of the callback
Michael Tremer [Sat, 22 Mar 2025 16:29:34 +0000 (16:29 +0000)] 
log stream: Move data as second argument of the callback

That way, we are compatible with the PTY stdout callback.

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2 months agolog stream: Change first argument of the callback to ctx
Michael Tremer [Sat, 22 Mar 2025 16:16:58 +0000 (16:16 +0000)] 
log stream: Change first argument of the callback to ctx

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2 months agoPTY: Remove the rest of the line buffering code
Michael Tremer [Sat, 22 Mar 2025 16:11:44 +0000 (16:11 +0000)] 
PTY: Remove the rest of the line buffering code

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2 months agolog stream: Add an experimental implementation to stream from PTY
Michael Tremer [Sat, 22 Mar 2025 15:51:37 +0000 (15:51 +0000)] 
log stream: Add an experimental implementation to stream from PTY

This is the first step to split all the complicated line buffering from
the PTY code.

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2 months agolog streamer: Move line sanitization from PTY
Michael Tremer [Sat, 22 Mar 2025 15:50:53 +0000 (15:50 +0000)] 
log streamer: Move line sanitization from PTY

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2 months agopty: Major refactor
Michael Tremer [Sat, 22 Mar 2025 15:02:12 +0000 (15:02 +0000)] 
pty: Major refactor

This adds loads of comments to hopefully make this thing more robust. So
far we don't really seem to be able to implement all the features we
need without destroying others.

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2 months agojail: Pass the program exit code as return code of the loop
Michael Tremer [Sat, 22 Mar 2025 14:20:23 +0000 (14:20 +0000)] 
jail: Pass the program exit code as return code of the loop

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2 months agotests: command: Always return zero after the pipe is finished
Michael Tremer [Sat, 22 Mar 2025 14:19:46 +0000 (14:19 +0000)] 
tests: command: Always return zero after the pipe is finished

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2 months agopty: Always disable character echoing
Michael Tremer [Thu, 20 Mar 2025 16:47:16 +0000 (16:47 +0000)] 
pty: Always disable character echoing

This usually happens later in case of the interactive version, but since
we don't need to configure much in the pipe case, we can just set this
as default.

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2 months agopty: Add a function to set up interactive mode
Michael Tremer [Thu, 20 Mar 2025 11:30:38 +0000 (11:30 +0000)] 
pty: Add a function to set up interactive mode

This way we can split off the initialization code a little bit better
from the main initialization of the PTY object.

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2 months agopty: Refactor how we capture output
Michael Tremer [Tue, 18 Mar 2025 18:02:26 +0000 (18:02 +0000)] 
pty: Refactor how we capture output

This will now avoid copying all the data around between the kernel and
userland and will also simply use our own callbacks which helps us to
keep the code a little bit less of an if/else hell.

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2 months agojail: Remove use of removed PTY flags
Michael Tremer [Tue, 18 Mar 2025 17:20:01 +0000 (17:20 +0000)] 
jail: Remove use of removed PTY flags

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2 months agopty: Re-organise flags
Michael Tremer [Tue, 18 Mar 2025 17:19:07 +0000 (17:19 +0000)] 
pty: Re-organise flags

The CONNECT* flags have been used for two purposes which got mixed up on
the way which is why the standard input was not connected for callbacks.

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2 months agopty: Add more logging when reading/writing
Michael Tremer [Tue, 18 Mar 2025 17:08:04 +0000 (17:08 +0000)] 
pty: Add more logging when reading/writing

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2 months agopty: Automatically drain when the event loop finishes
Michael Tremer [Tue, 18 Mar 2025 17:05:55 +0000 (17:05 +0000)] 
pty: Automatically drain when the event loop finishes

There was the problem that some content could have remained stuck in the
buffers on occasion.

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2 months agotests: Fail with error code if fgetc() returns an error
Michael Tremer [Tue, 18 Mar 2025 16:59:40 +0000 (16:59 +0000)] 
tests: Fail with error code if fgetc() returns an error

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2 months agotransaction: Tidy up cleanup code
Michael Tremer [Tue, 18 Mar 2025 16:37:17 +0000 (16:37 +0000)] 
transaction: Tidy up cleanup code

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2 months agojail: Tidy up creating a new jail
Michael Tremer [Tue, 18 Mar 2025 10:48:20 +0000 (10:48 +0000)] 
jail: Tidy up creating a new jail

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2 months agopython: pakfire: Keep a reference to the Python context
Michael Tremer [Tue, 18 Mar 2025 10:41:30 +0000 (10:41 +0000)] 
python: pakfire: Keep a reference to the Python context

Since we are registering all sorts of callbacks to here, we cannot
deallocate the Ctx object, or we won't be able to use them any more.

This is being fixed by holding a reference to the Python object instead
of the context itself. That will at least help us with lots of these
problems.

There is still, however, the problem that both the Python Ctx and
Pakfire object can be dereferenced when the backend objects will remain
existing.

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2 months agopython: Pakfire: Remove old callbacks from headers
Michael Tremer [Tue, 18 Mar 2025 10:40:44 +0000 (10:40 +0000)] 
python: Pakfire: Remove old callbacks from headers

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2 months agotests: python: Don't call depreated unit test function
Michael Tremer [Tue, 18 Mar 2025 10:39:44 +0000 (10:39 +0000)] 
tests: python: Don't call depreated unit test function

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2 months agopython: ctx: Always forward all messages to the logger
Michael Tremer [Tue, 18 Mar 2025 10:38:40 +0000 (10:38 +0000)] 
python: ctx: Always forward all messages to the logger

We will let the Python logger filter out what we don't need.

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2 months agopython: execute: Implement passing data into stdin
Michael Tremer [Tue, 18 Mar 2025 09:31:13 +0000 (09:31 +0000)] 
python: execute: Implement passing data into stdin

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2 months agopython: execute: Raise any output
Michael Tremer [Tue, 18 Mar 2025 09:11:35 +0000 (09:11 +0000)] 
python: execute: Raise any output

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2 months agopython: execute: Allow returning the output of the command
Michael Tremer [Mon, 17 Mar 2025 11:46:29 +0000 (11:46 +0000)] 
python: execute: Allow returning the output of the command

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2 months agojail: Remove unused function declaration
Michael Tremer [Mon, 17 Mar 2025 11:31:42 +0000 (11:31 +0000)] 
jail: Remove unused function declaration

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2 months agopython: execute: Implement setting the nice value
Michael Tremer [Mon, 17 Mar 2025 11:22:58 +0000 (11:22 +0000)] 
python: execute: Implement setting the nice value

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2 months agojail: Fix return code of nice function
Michael Tremer [Mon, 17 Mar 2025 11:22:16 +0000 (11:22 +0000)] 
jail: Fix return code of nice function

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2 months agopython: Bring back a basic version of Pakfire.execute()
Michael Tremer [Mon, 17 Mar 2025 11:17:20 +0000 (11:17 +0000)] 
python: Bring back a basic version of Pakfire.execute()

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2 months agopython: Re-add CommandExecutionError
Michael Tremer [Mon, 17 Mar 2025 11:15:53 +0000 (11:15 +0000)] 
python: Re-add CommandExecutionError

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
3 months agopython: Send the progress title in the start callback
Michael Tremer [Sat, 15 Mar 2025 12:01:25 +0000 (12:01 +0000)] 
python: Send the progress title in the start callback

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
3 months agoprogress: Add a status callback
Michael Tremer [Sat, 15 Mar 2025 11:53:25 +0000 (11:53 +0000)] 
progress: Add a status callback

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
3 months agoprogress: Allow to push/pop the status
Michael Tremer [Sat, 15 Mar 2025 11:37:25 +0000 (11:37 +0000)] 
progress: Allow to push/pop the status

That way, we can return to something more useful.

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
3 months agostrings: Add a function to pop the last element of an array
Michael Tremer [Sat, 15 Mar 2025 11:26:59 +0000 (11:26 +0000)] 
strings: Add a function to pop the last element of an array

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
3 months agotests: Fix compilation of the archive test
Michael Tremer [Sat, 15 Mar 2025 11:15:23 +0000 (11:15 +0000)] 
tests: Fix compilation of the archive test

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
3 months agotransaction: Drop old status callback
Michael Tremer [Sat, 15 Mar 2025 11:13:57 +0000 (11:13 +0000)] 
transaction: Drop old status callback

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
3 months agotransaction: Add a unified progress meter
Michael Tremer [Sat, 15 Mar 2025 11:09:08 +0000 (11:09 +0000)] 
transaction: Add a unified progress meter

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
3 months agoprogress: Never show any status for child-progress meters
Michael Tremer [Sat, 15 Mar 2025 11:08:30 +0000 (11:08 +0000)] 
progress: Never show any status for child-progress meters

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
3 months agoprogress: Add support for a status message
Michael Tremer [Sat, 15 Mar 2025 10:53:49 +0000 (10:53 +0000)] 
progress: Add support for a status message

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
3 months agoarchive: Add support for a parent progress indicator for extraction
Michael Tremer [Sat, 15 Mar 2025 10:53:16 +0000 (10:53 +0000)] 
archive: Add support for a parent progress indicator for extraction

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
3 months agoprogress: Rename status to state
Michael Tremer [Sat, 15 Mar 2025 10:44:45 +0000 (10:44 +0000)] 
progress: Rename status to state

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
3 months agopython: transaction: Add function to run the transaction
Michael Tremer [Fri, 14 Mar 2025 17:59:02 +0000 (17:59 +0000)] 
python: transaction: Add function to run the transaction

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
3 months agopython: ctx: Initialize the callbacks
Michael Tremer [Fri, 14 Mar 2025 17:58:40 +0000 (17:58 +0000)] 
python: ctx: Initialize the callbacks

Just to be safe...

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
3 months agopython: ctx: Ensure we are holding the GIL
Michael Tremer [Fri, 14 Mar 2025 17:57:39 +0000 (17:57 +0000)] 
python: ctx: Ensure we are holding the GIL

This is required because we usally return the GIL when we are jumping
into Pakfire functions as these tend to take some time when running.

When we are jumping back into the Python code, we need to acquire the
GIL again.

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
3 months agopython: Add functions to register a progress callback
Michael Tremer [Fri, 14 Mar 2025 16:04:19 +0000 (16:04 +0000)] 
python: Add functions to register a progress callback

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
3 months agopython: Allow passing a confirm callback from Python
Michael Tremer [Fri, 14 Mar 2025 15:20:47 +0000 (15:20 +0000)] 
python: Allow passing a confirm callback from Python

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
3 months agopython: Add a basic Transaction class
Michael Tremer [Fri, 14 Mar 2025 11:04:48 +0000 (11:04 +0000)] 
python: Add a basic Transaction class

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
3 months agotransaction: Remove unused flags
Michael Tremer [Fri, 14 Mar 2025 11:00:54 +0000 (11:00 +0000)] 
transaction: Remove unused flags

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
3 months agodb: Fail graciously when we could not open the database
Michael Tremer [Fri, 14 Mar 2025 10:56:31 +0000 (10:56 +0000)] 
db: Fail graciously when we could not open the database

This mainly changes the return code and does some minor code cleanups

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
3 months agopo: Update translations
Michael Tremer [Fri, 14 Mar 2025 10:40:06 +0000 (10:40 +0000)] 
po: Update translations

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
3 months agomacros: Add yet another kind of GitHub URL
Michael Tremer [Fri, 14 Mar 2025 10:39:12 +0000 (10:39 +0000)] 
macros: Add yet another kind of GitHub URL

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
3 months agoarch: Don't use TLS to store the utsname struct
Michael Tremer [Sat, 22 Feb 2025 20:57:54 +0000 (20:57 +0000)] 
arch: Don't use TLS to store the utsname struct

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
3 months agobuild: Ignore cgroups if they are not fully functional
Michael Tremer [Sat, 22 Feb 2025 20:28:16 +0000 (20:28 +0000)] 
build: Ignore cgroups if they are not fully functional

This is an experimental change to see how this will all turn out on
Jenkins.

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
3 months agobuild: Fix printing erros when repos config could not be written
Michael Tremer [Sat, 22 Feb 2025 20:08:43 +0000 (20:08 +0000)] 
build: Fix printing erros when repos config could not be written

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
3 months agotests: Fix makefile tests
Michael Tremer [Sat, 22 Feb 2025 20:08:13 +0000 (20:08 +0000)] 
tests: Fix makefile tests

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
3 months agorepo: Fix writing configuration
Michael Tremer [Sat, 22 Feb 2025 20:00:41 +0000 (20:00 +0000)] 
repo: Fix writing configuration

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
3 months agoparser: Make it less verbose
Michael Tremer [Sat, 22 Feb 2025 19:54:35 +0000 (19:54 +0000)] 
parser: Make it less verbose

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
3 months agojail: Log less when creating/freeing a jail
Michael Tremer [Sat, 22 Feb 2025 19:51:10 +0000 (19:51 +0000)] 
jail: Log less when creating/freeing a jail

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
3 months agojenkins: Move the asan logs to the root
Michael Tremer [Sat, 22 Feb 2025 17:58:12 +0000 (17:58 +0000)] 
jenkins: Move the asan logs to the root

Because otherwise I am too stupid to find them.

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
3 months agotests: Avoid leaking memory in parser tests
Michael Tremer [Sat, 22 Feb 2025 17:46:25 +0000 (17:46 +0000)] 
tests: Avoid leaking memory in parser tests

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
3 months agojenkins: Upload asan logs only when tests have failed
Michael Tremer [Sat, 22 Feb 2025 17:39:42 +0000 (17:39 +0000)] 
jenkins: Upload asan logs only when tests have failed

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
3 months agoparser: Dump the current status less often
Michael Tremer [Sat, 22 Feb 2025 17:28:32 +0000 (17:28 +0000)] 
parser: Dump the current status less often

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
3 months agoxfopen: Include limits.h
Michael Tremer [Sat, 22 Feb 2025 17:27:45 +0000 (17:27 +0000)] 
xfopen: Include limits.h

We need this for ULONG_MAX.

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
3 months agostrings: Have pakfire_string_format_interval write to a preallocated buffer
Michael Tremer [Sat, 22 Feb 2025 17:20:43 +0000 (17:20 +0000)] 
strings: Have pakfire_string_format_interval write to a preallocated buffer

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
3 months agojenkins: Use multiple CPU cores for the static analyzer & LCOV
Michael Tremer [Sat, 22 Feb 2025 17:20:11 +0000 (17:20 +0000)] 
jenkins: Use multiple CPU cores for the static analyzer & LCOV

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
3 months agojenkins: Run the testsuite with address sanitization
Michael Tremer [Sat, 22 Feb 2025 17:09:18 +0000 (17:09 +0000)] 
jenkins: Run the testsuite with address sanitization

There are still some things that are broken (Python), so for now, we
won't care if this fails.

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
3 months agoconfigure: Let the compiler figure out what to link for ASAN
Michael Tremer [Sat, 22 Feb 2025 17:05:09 +0000 (17:05 +0000)] 
configure: Let the compiler figure out what to link for ASAN

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
3 months agoCLI: Refactor progressbar to use statically allocated buffers
Michael Tremer [Sat, 22 Feb 2025 17:04:23 +0000 (17:04 +0000)] 
CLI: Refactor progressbar to use statically allocated buffers

This might take a little bit of pressure off the allocator and we don't
have to deal with asprintf() loosing memory.

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
3 months agotransactions: Free the job queue
Michael Tremer [Sat, 22 Feb 2025 16:49:30 +0000 (16:49 +0000)] 
transactions: Free the job queue

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
3 months agosnapshots: Be less verbose when destroying a snapshot
Michael Tremer [Sat, 22 Feb 2025 16:49:04 +0000 (16:49 +0000)] 
snapshots: Be less verbose when destroying a snapshot

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
3 months agojail: Fix buffer overrun when reading the scriptlet
Michael Tremer [Sat, 22 Feb 2025 16:48:42 +0000 (16:48 +0000)] 
jail: Fix buffer overrun when reading the scriptlet

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
3 months agoasan: Use libunwind for better stack traces
Michael Tremer [Sat, 22 Feb 2025 16:48:08 +0000 (16:48 +0000)] 
asan: Use libunwind for better stack traces

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
3 months agotests: Remove various smaller memory "leaks"
Michael Tremer [Sat, 22 Feb 2025 16:20:04 +0000 (16:20 +0000)] 
tests: Remove various smaller memory "leaks"

There are not critical because the test suite does not run for very
long.

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
3 months agojail: Free the timeout timer
Michael Tremer [Sat, 22 Feb 2025 16:12:34 +0000 (16:12 +0000)] 
jail: Free the timeout timer

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
3 months agojail: Use the reference to the loop that we already have
Michael Tremer [Sat, 22 Feb 2025 16:12:19 +0000 (16:12 +0000)] 
jail: Use the reference to the loop that we already have

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
3 months agofile: Refactor making the filelist
Michael Tremer [Sat, 22 Feb 2025 16:01:51 +0000 (16:01 +0000)] 
file: Refactor making the filelist

There seems to have been a leak when initializing the string, so we
format it on the stack first and then copy it to the heap later.

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
3 months agostrings: Add function to add formatted strings to a buffer
Michael Tremer [Sat, 22 Feb 2025 16:00:36 +0000 (16:00 +0000)] 
strings: Add function to add formatted strings to a buffer

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
3 months agolog buffer: Free all held lines when freeing the buffer
Michael Tremer [Sat, 22 Feb 2025 15:44:12 +0000 (15:44 +0000)] 
log buffer: Free all held lines when freeing the buffer

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
3 months agodb: Ensure to free the deps list after each iteration
Michael Tremer [Sat, 22 Feb 2025 15:43:53 +0000 (15:43 +0000)] 
db: Ensure to free the deps list after each iteration

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
3 months agoconfigure: Build with debugging information when using asan
Michael Tremer [Sat, 22 Feb 2025 15:38:31 +0000 (15:38 +0000)] 
configure: Build with debugging information when using asan

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
3 months agoconfigure: Add option to enable the address sanitizer
Michael Tremer [Sat, 22 Feb 2025 15:14:01 +0000 (15:14 +0000)] 
configure: Add option to enable the address sanitizer

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
3 months agojenkins: Remove any traces for Almalinux
Michael Tremer [Wed, 19 Feb 2025 19:31:06 +0000 (19:31 +0000)] 
jenkins: Remove any traces for Almalinux

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
3 months agojenkins: Use more modern command line to install dev tools on Fedora
Michael Tremer [Wed, 19 Feb 2025 19:30:23 +0000 (19:30 +0000)] 
jenkins: Use more modern command line to install dev tools on Fedora

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
3 months agoparser: Ignore comments regardless what state the scanner is in
Michael Tremer [Wed, 19 Feb 2025 19:26:31 +0000 (19:26 +0000)] 
parser: Ignore comments regardless what state the scanner is in

Fixes: #13363 - A comment character anywhere in the build or packages section causes the build to fail
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
3 months agodist: Fix return codes
Michael Tremer [Wed, 19 Feb 2025 19:19:38 +0000 (19:19 +0000)] 
dist: Fix return codes

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
3 months agoparser: Properly handle yyparse() return codes
Michael Tremer [Wed, 19 Feb 2025 19:12:38 +0000 (19:12 +0000)] 
parser: Properly handle yyparse() return codes

This patch converts them into our usual errno codes.

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
3 months agojenkins: Strictly name releases
Michael Tremer [Wed, 19 Feb 2025 18:42:37 +0000 (18:42 +0000)] 
jenkins: Strictly name releases

For Ubuntu, latest points at the latest LTS release, which is not what I
expected. To avoid any confusion, let's name the releases that we want
to support by their number or code name.

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
3 months agojenkins: Add Ubuntu latest for the tests
Michael Tremer [Tue, 18 Feb 2025 18:09:16 +0000 (18:09 +0000)] 
jenkins: Add Ubuntu latest for the tests

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
3 months agojail: Run setuid/gid mapping even when we are running in /
Michael Tremer [Sun, 16 Feb 2025 16:30:17 +0000 (16:30 +0000)] 
jail: Run setuid/gid mapping even when we are running in /

Since we always create a new namespace, we need to always run this, too.

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>