From 3b559bb16df9c178401be49c9cb8130b7d7568fd Mon Sep 17 00:00:00 2001 From: Paul Barker Date: Fri, 5 Feb 2021 11:26:07 +0000 Subject: bitbake: hashserv: Support read-only server The -r/--readonly argument is added to the bitbake-hashserv app. If this argument is given then clients may only perform read operations against the server. The read-only mode is implemented by simply not installing handlers for write operations, this keeps the permission model simple and reduces the risk of accidentally allowing write operations. As a sqlite database can be safely opened by multiple processes in parallel, it's possible to start two hashserv instances against a single database if you wish to export both a read-only port and a read-write port. (Bitbake rev: 492bb02eb0e071c792407ac3113f92492da1a9cc) Signed-off-by: Paul Barker Signed-off-by: Richard Purdie --- bitbake/bin/bitbake-hashserv | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'bitbake/bin') diff --git a/bitbake/bin/bitbake-hashserv b/bitbake/bin/bitbake-hashserv index 1bc1f91f38..2669bbd130 100755 --- a/bitbake/bin/bitbake-hashserv +++ b/bitbake/bin/bitbake-hashserv @@ -33,6 +33,7 @@ def main(): parser.add_argument('--bind', default=DEFAULT_BIND, help='Bind address (default "%(default)s")') parser.add_argument('--database', default='./hashserv.db', help='Database file (default "%(default)s")') parser.add_argument('--log', default='WARNING', help='Set logging level') + parser.add_argument('-r', '--read-only', action='store_true', help='Disallow write operations from clients') args = parser.parse_args() @@ -47,7 +48,7 @@ def main(): console.setLevel(level) logger.addHandler(console) - server = hashserv.create_server(args.bind, args.database) + server = hashserv.create_server(args.bind, args.database, read_only=args.read_only) server.serve_forever() return 0 -- cgit v1.2.3-54-g00ecf