| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
gcr historically consisted of 2 high-level parts: `gcr-base` and
`gcr-ui`. `gcr-base` contains the core classes and interfaces to deal
with crypto-related items (e.g. `GcrCertificate`), while `gcr-ui`
contained GTK widgets to show those items (e.g. `GcrCertificateWidget`).
Now: with the move to gcr4, it's becoming more and more clear to that this isn't really a path forward:
On one hand, GTK4 has transitioned from a platform toolkit (usually
GNOME was the primary target) to one that allows you to build your
platform on top (e.g. libadwaita, libgranite, or your very own). Kepeing
that in mind, having "GTK-based" widgets for use in general purpose
doesn't really make sense, since it will always look out touch on
platforms
On the other hand, widgets are usually more faster-moving targets in
both looks as well as API than an actual library, so in practice gcr-ui
has a different lifecycle than gcr-base.
Finally, @tintou has been doing an awesome effort to implement an API
that allows consumers to write their own widgets, without having to deal
with asn1 decoding etc. At this point, I think the certificate widget is
likely the only widget we're seeing interest in.
As such, this commit drops gcr-gtk3 and gcr-gtk4 as libraries. There's
still a gcr-viewer debugging tool as a troubleshooting/debugging tool,
that's it.
See https://gitlab.gnome.org/GNOME/gcr/-/issues/100 for the related
discussion.
|
|
|
|
|
| |
That allows gi-docgen to link types like `GObject` back to the original
documentation.
|
|
|
|
|
|
|
|
|
|
| |
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.
|
| |
|
|
|
|
| |
Signed-off-by: Corentin Noël <corentin.noel@collabora.com>
|
| |
|
|
|
|
| |
Also remove the post-install symlinks
|
|
|
|
|
|
| |
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.
|
|
|
|
| |
Link to the Gcr and Gck documentation
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
gtk-doc has been slowly dying for the past few years. With gi-docgen we
have a clear successor in sight to replace the voodoo magic one needs to
get the whole documentation setup.
See the [gi-docgen tutorial] for more info on how the system works.
Since we're now only the C compiler (and GIR) parse the C code, that
means we can also get rid of all the special escapes for the # character
in PKCS#11.
[gi-docgen tutorial]: https://gnome.pages.gitlab.gnome.org/gi-docgen/tutorial.html
|
|
|
|
|
|
| |
This port the ssh-agent support provided as a sub-daemon in
gnome-keyring, as a standalone binary, so that it can easily be
managed through systemd.
|
|
|
|
|
| |
We have a modern, saner build system in place with Meson, so let's drop
autotools before releasing the next version of gcr.
|
| |
|
|
|
|
|
|
|
| |
This allows calling ssh programs like ssh-add or ssh itself, and
handling the password prompts.
https://bugzilla.gnome.org/show_bug.cgi?id=735873
|
|
|
|
|
|
| |
Since we want to use this from the gcr/ code
https://bugzilla.gnome.org/show_bug.cgi?id=735873
|
|
|
|
|
| |
Rather than using our own _gck_debug() and _gcr_debug()
wrappers.
|
|
|
|
|
|
|
|
| |
This is more bindable than setting fields in the GckObjectCacheIface
struct directly.
Hide the old gck_enumerator_set_object_type() for scripting and
introspection using languages.
|
|
|
|
|
| |
For seahorse to use when implementing its GcrCertificate derived
class.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
gtk-doc doesn't work as an included Makefile so continue to
use SUBDIRS with docs/reference/*
Run the tests using TAP. Unfortunately the GTest --tap output
mode doesn't behave well in the face of failures, and doesn't
output a test plan. Use our own tap-driver and tap-compiler
for these reasons.
This also fixes several builddir != srcdir issues and testing hacks
that were sneaking around in the code base.
Move the tests into the same directories as the code that it
is testing.
|
|
|
|
|
| |
vapigen is completely broken when it comes to having arrays as
fields in a compact class (ie: struct).
|
|
|
|
| |
So you can do things like GCR_CHECK_VERSION(x,y,z)
|
|
|
|
|
|
|
|
|
| |
This was deprecated without reference to a bug or reasoning,
and we need it for our importer drop down button. We want
to show the device image in the drop down menu. So copy it
from GTK+, clean it up, and keep using it.
Add a tool to test GcrImportButton
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
1. Access to the filename is useful in many ways. Importers, e.g.
GcrOpenSshImporter, have access to the GcrParsed, and can read the
filename to preserve filenames of imported keys.
2. When the GcrViewerWindow reads a key to create a parser, store
the filename as an instance variable of the parser
3. In the parse_...() functions where the GcrParsed is created, store
the filename as an instance variable via push_parsed (read it from
the parser).
https://bugzilla.gnome.org/show_bug.cgi?id=705225
|
|
|
|
|
|
|
|
|
|
|
|
| |
This also solves a corner case where GcrParser would keep around a
pointer to the data passed into gcr_parser_parse_data(), even after
that data had been freed.
gcr_parser_parse_data() now copies the data passed in, where as
the new gcr_parser_parse_bytes() simply keeps a reference to the
GBytes.
https://bugzilla.gnome.org/show_bug.cgi?id=708736
|
|
|
|
| |
Since it's not public API, at least not yet.
|
|
|
|
| |
This allows frob-unlock tool to start working again.
|
|
|
|
| |
https://bugzilla.gnome.org/show_bug.cgi?id=689685
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* This is due to gobject introspection not being able to have separate
GIRs provide the same namespace, and the desire to conditionally
build the GTK+ dependent stuff.
* Partially based on a patch by Mathias Hasselmann
* Separate GIRs: Gcr and GcrUi
* Separate libraries: libgcr-base-3.so and libgcr-ui-3.so. The latter
links to the former.
* Symlink libgcr-3.so to libgcr-ui-3.so
* Expose internal symbols in libgcr-base-3.so so they can be easily
shared by libgcr-ui-3.so
* Add --without-gtk argument
https://bugzilla.gnome.org/show_bug.cgi?id=688678
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* Reorganize our libraries too, in a backwards compatible
manner, in order to better match this split.
* This reorganization was predicated on the fact that we can't
have two GIRs with the same namespace. So the two namespaces are:
- Gcr
- GcrUi
* The pkg-config files are:
- gcr-base
- gcr-ui
- gcr (which depends on both of the above)
https://bugzilla.gnome.org/show_bug.cgi?id=689685
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
* Properly relay the prompt-close signal from GcrSystemPrompter
back to GcrSystemPrompt by firing the PromptDone callback method
on the caller's DBus interface.
* Make sure GcrSystemPrompt emits prompt-close appropriately for
all the various paths that can close the prompt.
* Add testing of the above, and changes in the mock prompter for this.
https://bugzilla.gnome.org/show_bug.cgi?id=678611
|
|
|
|
|
|
|
|
|
|
|
| |
* This signal is fired when the prompt is closed, regardless of
whether that closure was initiated by the user, or by the the
application.
* Add a gcr_prompt_close() method to fire this signal.
* After closing a prompt the prompt should not display any further
password or confirm prompts to the user.
https://bugzilla.gnome.org/show_bug.cgi?id=678611
|
|
|
|
|
| |
* Clean up documentation and introspection warnings
* Separate GcrImportInteraction docs into own page
|
| |
|
|
|
|
|
|
|
| |
* Add gcr_secure_memory_new() and gcr_secure_memory_free()
and friends.
* Exposed so that we can implement secure entry widget in
gnome-shell
|
|
|
|
|
| |
* Resets all properties of the prompt to the defaults in the
interface
|
|
|
|
|
|
|
| |
* Add continue-label and cancel-label properties to GcrPrompt
* Implement in GcrSystemPrompt and in the mock prompter
https://bugzilla.gnome.org/show_bug.cgi?id=669793
|
|
|
|
| |
* And add display-name property to GcrViewerWidget
|
| |
|
|
|
|
|
|
| |
* And make gck_attributes_add_attribute() handle owned attributes
* Unowned attributes should be done with gck_attributes_add_data()
* This change to ABI cleans things up before API is released as stable
|
| |
|
|
|
|
| |
* When no prompts occur for 10 seconds, quit process
|
| |
|
|
|
|
|
|
|
| |
* GcrSystemPrompt is a class used on the client.
* GcrSystemPrompter is a base class for implementing the actual prompter
* GcrMockPrompter is a mock prompter, which returns predefined values
useful in tests
|
|
|
|
|
| |
* This is a GtkEntryBuffer that uses non-pageable memory for the
buffer, to be used with passwords and secrets.
|
|
|
|
|
|
|
|
|
| |
* There were problems with applications that didn't use libgck but
linked to the old version with the old libtool number: empathy
* So stub out the removed functions, revert the libtool version changes
instead of removing those functions.
This reverts commit ef7e91d66839d4104ee6ba9681e49506f5dd5fa3.
|
|
|
|
|
|
|
|
|
|
| |
* libgck API is not yet stable.
* Gck is only used internally in the gcr projcet, gnome-keyring project
and the seahorse project.
* We want to be threadsafe with regard to attributes, and the
functions removed can't be implemented within the new framework.
* Remove deprecated functions at the same time, since this is an
opportunity to cleanup.
|
| |
|