summaryrefslogtreecommitdiff
path: root/gcr
Commit message (Collapse)AuthorAgeFilesLines
* certificate: Print dates in ISO8601 formatDaiki Ueno2023-01-171-3/+3
| | | | | | | Printing dates in locale dependent format ("%x" with g_date_time_format) could be misleading when they ares shown in certificate fields. This changes the format to "%F" (i.e., YYYY-MM-DD) for clarity.
* test-ssh-agent-process: remember to free connectionNiels De Graef2023-01-161-2/+3
| | | | | | In `test_restart()` we call `connect_to_process()` twice, which sets up a new `GSocketConnection` each time. That means we shouldn't forget to cleanup the first connection before calling it a second time.
* tests: Don't leak GError in test-ssh-agent-serviceNiels De Graef2023-01-161-0/+1
|
* gcr: Don't leak error/stderror when spawning askpassNiels De Graef2023-01-161-3/+3
|
* certificate: Don't leak Identifier field valueNiels De Graef2023-01-161-1/+1
| | | | | ASAN caught that we were leaking the value here. Fix it by not doing a duplicate string copy.
* Stop using GSliceNiels De Graef2023-01-164-12/+12
| | | | | | | | | | | | GLib is discussing deprecating/removing it upstream [1] since it has only limited uses. Next to that, it seems to bork stack traces here when using ASAN (for which you also have to specify `G_SLICE=always-malloc` too). In other words, let's just get rid of using `GSLice` and call the allocation APIs directly. [1]: https://gitlab.gnome.org/GNOME/glib/-/issues/1079
* gcr: Add means to construct GcrCertificate from PKCS #11 URIDaiki Ueno2023-01-163-20/+188
| | | | | | This adds an alternative constructor for GcrPkcs11Certificate, namely gcr_pkcs11_certificate_new_from_uri and its async variant, which would allow applications to handle PKCS #11 certificates more easily.
* gcr: Fix criticals if a CN is nullNiels De Graef2022-08-091-0/+4
| | | | | | Both the issuer CN and the subject CN can be NULL, so make sure we deal with this case. This fixes a few CRITICALs when loading a certificate that has this.
* gcr: Add GcrCertificateSection/FieldCorentin Noël2022-08-0710-0/+1091
| | | | | | Allows to use the same code-path for both GTK3 and GTK4. Also allow any library-user to reimplement it with the toolkit of its choice or to adapt it when a different styling is required (e.g. with libadwaita).
* Drop Gck list APINiels De Graef2022-07-1710-46/+24
| | | | | | | | | | gck provided some APIs that made working with lists of `GObject`s easier. GLib has for a long time added API that works well enough for the same use case, like `g_list_copy_deep()`, `g_list_free_full()` and more recently also `g_clear_list()`, so use those instead. This commit also bumps the required GLib version to a more modern 2.64 (which is needed for the `g_clear_list()` API).
* gcr: Drop the GcrComparable interfaceNiels De Graef2022-07-159-243/+1
| | | | | | | We aren't using it for anything nor is anybody create a custom comparable interface. Applications that want to do sorting problably have a better idea on how they want to sort things (and might want to deal with it differently, like extending `GtkSorter` for example)
* parser: use gi-docgen syntaxNiels De Graef2022-07-091-19/+21
|
* importer: drop sync import methodNiels De Graef2022-07-072-121/+1
| | | | | | | Nobody ever implemented it, and we get stuck with an implementation that fiddles with the main loop. Certain bindings (like Vala) also don't know about optional interface methods, so those would be stuck still implementing it.
* meson: Ensure the vala metadata is foundNiels De Graef2022-07-071-2/+3
|
* certificate: Remove markup-textNiels De Graef2022-07-073-48/+1
| | | | | It's a silly property that was introduced for the likes of Seahorse, which should just do better.
* Drop remaning uses of strptime()Niels De Graef2022-07-072-13/+10
|
* egg: Drop usage of timegm in favor of GDateTimeNiels De Graef2022-07-071-2/+0
|
* Use GDateTime instead of GDateNiels De Graef2022-07-073-40/+20
| | | | ... and remove some functions that still use `time_t`
* certificate: rename properties to match gettersnielsdg/certificate-props-renameNiels De Graef2022-07-061-28/+28
| | | | | This fixes some heuristics that GIR uses when matching the getters, properties and setters.
* gcr: Drop GcrColumnNiels De Graef2022-06-278-199/+0
| | | | | These were just used for display treeviews. We're not really interested in putting that kind of stuff inside gcr itself, so just remove it.
* gcr: Rename gcr-ssh-askpassNiels De Graef2022-06-273-14/+12
| | | | | `gcr-ssh-askpass` is provided by both gcr3 and gcr4, so add our version number so we can parallel install both.
* Drop custom icons in gcrNiels De Graef2022-06-2716-832/+1
| | | | | | | | | | | Icons are problematic to provide within gcr, as different DEs that are using it, have different expectations what such an icon should look like: one wants it to be colorful, another wants it to be monochrome, yet another wants everything skeumorphic etc. Let's not deal with this in gcr4 and drop any icons. If applications want to provide an icon, they can do that themselves much better then we ever can.
* gcr: Remove gcr-prompter based D-Bus servicesnielsdg/remove-dbus-servicesNiels De Graef2022-06-263-23/+0
| | | | | | `gcr-prompter` got removed in the gcr4 migration, so keeping these doesn't make sense in any case. If we decide to bring back `gcr-prompter`, we can still revert this commit too.
* meson: Install DBus services in the correct prefixNiels De Graef2022-06-131-1/+1
| | | | | | | We should use the pkg-config variable of the `dbus-1` package to check where we should install our D-Bus services, but we also need to make sure we don't pollute anything outside of $prefix, so make sure to get that case as well.
* Replace g_memdup with g_memdup2Niels De Graef2022-06-135-7/+7
|
* Remove symbols filesNiels De Graef2022-06-061-265/+0
| | | | They're unused and outdated.
* Add lookup of trust assertions for distrusted certscert-distrustedNiels De Graef2022-06-063-0/+290
| | | | | | | | | | There is one notable type of trust assertions that is not implemented in gcr: those where `CK_X_ASSERTION_TYPE` equals `CKT_X_DISTRUSTED_CERTIFICATE`. This is actually also something needed by Seahorse, as that is showing the infamous "null" certificates due to distrusted certificates being present on the machine, but not having any DER data stored with them.
* secure-memory: Fix odr-violation by using a private settertintou/fix-ciCorentin Noël2022-06-051-6/+5
|
* gcr: Add nullable and out annotations in GcrCertificateCorentin Noël2022-04-302-28/+34
| | | | | Add nullable to returned strings and out for the size. Always make sure that the size has been set to 0 when returning a NULL string.
* build: Make building the Vala bindings optionalMarvin Schmidt2022-04-291-12/+14
|
* gck: Remove floating capabilities to GckAttributesCorentin Noël2022-04-099-25/+29
| | | | | | | It is not necessary and makes it difficult to interact with GObject introspected languages. Signed-off-by: Corentin Noël <corentin.noel@collabora.com>
* gck: use the right namespace for GckUriData methodsCorentin Noël2022-04-091-2/+2
|
* gck: Remove authenticate_slot/object from GckModuleCorentin Noël2022-04-091-1/+1
| | | | Also remove the compatibility test and objects.
* gcr: Update the inclusion guard to not mention gcr-baseCorentin Noël2022-04-0934-122/+98
| | | | Signed-off-by: Corentin Noël <corentin.noel@collabora.com>
* gck-object-cache: Use G_DECLARE_INTERFACE to define the interfaceCorentin Noël2022-04-091-2/+2
| | | | | | | This means that GckObjectCacheIface becomes GckObjectCacheInterface and GCK_OBJECT_CACHE_GET_INTERFACE becomes GCK_OBJECT_CACHE_GET_IFACE. Signed-off-by: Corentin Noël <corentin.noel@collabora.com>
* gcr-importer: Use G_DECLARE_INTERFACE to define the interfaceCorentin Noël2022-04-094-27/+18
| | | | | | | This means that GcrImporterIface becomes GcrImporterInterface and GCR_IMPORTER_GET_INTERFACE becomes GCR_IMPORTER_GET_IFACE. Signed-off-by: Corentin Noël <corentin.noel@collabora.com>
* gcr-import-interaction: Use G_DECLARE_INTERFACE to define the interfaceCorentin Noël2022-04-092-27/+13
| | | | | | | | This means that GcrImportInteractionIface becomes GcrImportInteractionInterface and GCR_IMPORT_INTERACTION_GET_INTERFACE becomes GCR_IMPORT_INTERACTION_GET_IFACE. Signed-off-by: Corentin Noël <corentin.noel@collabora.com>
* gcr-comparable: Use G_DECLARE_INTERFACE to define the interfaceCorentin Noël2022-04-094-17/+9
| | | | | | | This means that GcrComparableIface becomes GcrComparableInterface and GCR_COMPARABLE_GET_INTERFACE becomes GCR_COMPARABLE_GET_IFACE. Signed-off-by: Corentin Noël <corentin.noel@collabora.com>
* gcr-prompt: Use G_DECLARE_INTERFACE to define the interfaceCorentin Noël2022-04-095-31/+22
| | | | | | | This means that GcrPromptIface becomes GcrPromptInterface and GCR_PROMPT_GET_INTERFACE becomes GCR_PROMPT_GET_IFACE. Signed-off-by: Corentin Noël <corentin.noel@collabora.com>
* gcr: Remove deprecated methodsCorentin Noël2022-04-095-189/+0
| | | | Signed-off-by: Corentin Noël <corentin.noel@collabora.com>
* gcr: Remove the GcrCollection interfaceCorentin Noël2022-04-0918-2917/+1
| | | | | | There is now the GListModel interface in GLib that should be used for this. Signed-off-by: Corentin Noël <corentin.noel@collabora.com>
* gcr-simple-certificate: Use a GBytes internallyCorentin Noël2022-04-091-17/+6
| | | | Makes the code simpler.
* gcr: Add gcr-fingerprint.h file in gcr.hCorentin Noël2022-04-091-0/+1
| | | | It has been forgotten.
* gck: Remove deprecated headerCorentin Noël2022-04-091-1/+1
|
* gcr: Remove gcr-base-3 and make gcr-3 independent of GTKCorentin Noël2022-04-0928-144/+101
| | | | Also remove the post-install symlinks
* meson: Declare libversion variables and consistently use itCorentin Noël2022-04-081-6/+7
| | | | | | Do not rely on major_version to manually create the library names. Make sure to be consistent and use a single variable for all the library names and folder mentions.
* meson: Use the library object to declare pkgconfig dependency chainCorentin Noël2022-04-081-1/+1
| | | | Allows to always use the right dependency name.
* gcr: fix build with newest gi-docgenmcatanzaro/ifaceMichael Catanzaro2022-04-041-1/+1
| | | | | | WARNING: Invalid fragment for 'Gcr.Prompt': it should be iface The interface for implementing [class@Prompt]. ^~~~~~~~~~~~~~
* meson: Fix unknown kw argument in gnome.generate_girJakub Jirutka2022-01-121-1/+0
| | | | | | | | | | | | This argument has been removed in Meson 0.61.0: gck/meson.build:130:2: ERROR: gnome.generate_gir got unknown keyword arguments "packages" https://github.com/mesonbuild/meson/commit/f8fc5cb860465718fe7c79a1bf1fe00659f138de: > The packages argument to gnome.generate_gir was allowed, but never did anything, so stop passing it. Fixes #89
* certifiate-request: Remove (constructor) annotationNiels De Graef2021-11-161-2/+2
| | | | | | | This got added in the gi-docgen port. While it's technically correct, it's an API break for GIR-based bindings (notably, the Vala bindings are already suffering from build issues). As such, remove it again for API compatibility purposes.