libmalcontent implements parental controls support which can be used by applications to filter or limit the access of child accounts to inappropriate content.
Go to file
Philip Withnall 5262658d48 lib: Cast integers of type uid_t to appropriate types for varargs
When querying for the details of a particular user by their UID, we call
accountsservice over D-Bus. Its API takes a gint64 variant, which we
build using g_variant_new(), which takes varargs. Passing an integer of
type uid_t in the varargs works fine on 64-bit architectures, where
uid_t is 64-bit, but not on other architectures, where it’s likely
32-bit. In that case, g_variant_new() will still read 64 bits from the
varargs input, even though the caller only put 32 on there. The rest
will be filled with rubbish.

Fix that by explicitly casting the uid_t to gint64 in the varargs. Fix a
few other areas where uid_t variables are passed to functions which
might interpret them as a different kind of integer too.

Signed-off-by: Philip Withnall <withnall@endlessm.com>

https://phabricator.endlessm.com/T24016
2018-12-21 13:58:50 +00:00
accounts-service accounts-service: Rename D-Bus properties to CamelCase 2018-12-12 13:43:39 +00:00
debian debian: Initial Debian packaging 2018-10-06 01:18:45 +01:00
eos-parental-controls-client accounts-service: Add allow-user-installation setting 2018-11-29 21:16:36 +00:00
libeos-parental-controls lib: Cast integers of type uid_t to appropriate types for varargs 2018-12-21 13:58:50 +00:00
po po: Add basic translation support 2018-09-28 10:12:53 +02:00
subprojects build: Force libglib-testing to link statically 2018-12-20 17:44:45 +00:00
tools accounts-service: Add accounts service vendor extension for app filter 2018-09-28 10:12:53 +02:00
.gitmodules tests: Add comprehensive tests for libeos-parental-controls 2018-12-20 13:01:01 +00:00
COPYING Initial commit of README and COPYING 2018-09-24 15:35:58 +01:00
README Initial commit of README and COPYING 2018-09-24 15:35:58 +01:00
eos-parental-controls.doap Initial commit of README and COPYING 2018-09-24 15:35:58 +01:00
meson.build build: Force libglib-testing to link statically 2018-12-20 17:44:45 +00:00
meson_options.txt libeos-parental-controls: Add placeholder unit tests 2018-10-06 00:48:36 +01:00
template.test.in libeos-parental-controls: Add placeholder unit tests 2018-10-06 00:48:36 +01:00

README

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

eos-parental-controls
=====================

eos-parental-controls implements support for restricting the abilities of
non-administrator accounts on an Endless OS system. Typically, when this is
used, a non-administrator account will be for a child using the system; and the
administrator accounts will be for the parents.

It provides an accounts service vendor extension for storing an app filter to
restrict the childs access to certain applications; and a simple library for
accessing and applying the app filter.

All the library APIs are currently unstable and are likely to change wildly.

Dependencies
============

 • accounts-service
 • dbus-daemon
 • gio-2.0 ≥ 2.54
 • glib-2.0 ≥ 2.54
 • gobject-2.0 ≥ 2.54

Licensing
=========

All code in this project is licensed under LGPL-2.1+. See debian/copyright and
COPYING for more details.

Bugs
====

Bug reports and patches should be filed in GitHub.

Contact
=======

https://github.com/endlessm/eos-parental-controls