diff options
author | Julian Andres Klode <jak@debian.org> | 2017-01-29 13:46:09 +0100 |
---|---|---|
committer | Guillem Jover <guillem@debian.org> | 2018-05-04 04:13:19 +0200 |
commit | 0615492cb4c79d1f552e49f4a10dbfc959f03b9c (patch) | |
tree | 95bf8375b31e89bd402bcb9536bb5378abf855c5 /src/packages.c | |
parent | 2d7566140335d5338e5a98278d4df762936f67f4 (diff) | |
download | dpkg-0615492cb4c79d1f552e49f4a10dbfc959f03b9c.tar.gz |
libdpkg: Introduce frontend locking
Currently, in order to run dpkg, frontends have to release the database
lock before invoking dpkg and re-acquire it afterwards, leaving a short
time where the database is unlocked and a different dpkg process or
frontend could lock it.
Frontend locking addresses the problem by creating a "lock-frontend"
file that is acquired by the frontend and not released for dpkg
invocations. Thus, multiple frontends cannot race for the database lock.
This change extends the frontend lock to dpkg itself, acquiring it
whenever the variable DPKG_FRONTEND_LOCKED is not set, so that a user
manually running dpkg or a frontend not supporting this protocol cannot
interfere with a currently running frontend.
[guillem@debian.org:
- Add documentation.
- Rename frontend lock file.
- Fix error strings. ]
Signed-off-by: Guillem Jover <guillem@debian.org>
Diffstat (limited to 'src/packages.c')
0 files changed, 0 insertions, 0 deletions