diff options
author | Stefano Karapetsas <[email protected]> | 2012-02-22 03:44:27 -0800 |
---|---|---|
committer | Stefano Karapetsas <[email protected]> | 2012-02-22 03:44:27 -0800 |
commit | 2dfe3164d9f195b50e066def8e2a4782b5910c10 (patch) | |
tree | f95660c9462b74c2775355c29df79267fc30501b /plugins/smartcard/msd-smartcard.h | |
parent | ecd8a153901507f5d210d6f85103693ef81d49c3 (diff) | |
parent | e46b4adef5c6c6805b3ca6dbfbe99a4299252514 (diff) | |
download | mate-settings-daemon-2dfe3164d9f195b50e066def8e2a4782b5910c10.tar.bz2 mate-settings-daemon-2dfe3164d9f195b50e066def8e2a4782b5910c10.tar.xz |
Merge pull request #3 from haxar/master
gsd to msd complete rename patch by NiceandGently
Diffstat (limited to 'plugins/smartcard/msd-smartcard.h')
-rw-r--r-- | plugins/smartcard/msd-smartcard.h | 98 |
1 files changed, 98 insertions, 0 deletions
diff --git a/plugins/smartcard/msd-smartcard.h b/plugins/smartcard/msd-smartcard.h new file mode 100644 index 0000000..d00b8af --- /dev/null +++ b/plugins/smartcard/msd-smartcard.h @@ -0,0 +1,98 @@ +/* securitycard.h - api for reading and writing data to a security card + * + * Copyright (C) 2006 Ray Strode + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2, or (at your option) + * any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA + * 02111-1307, USA. + */ +#ifndef MSD_SMARTCARD_H +#define MSD_SMARTCARD_H + +#include <glib.h> +#include <glib-object.h> + +#include <secmod.h> + +#ifdef __cplusplus +extern "C" { +#endif +#define MSD_TYPE_SMARTCARD (msd_smartcard_get_type ()) +#define MSD_SMARTCARD(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), MSD_TYPE_SMARTCARD, MsdSmartcard)) +#define MSD_SMARTCARD_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), MSD_TYPE_SMARTCARD, MsdSmartcardClass)) +#define MSD_IS_SMARTCARD(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), MSD_TYPE_SMARTCARD)) +#define MSD_IS_SMARTCARD_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), MSD_TYPE_SMARTCARD)) +#define MSD_SMARTCARD_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS((obj), MSD_TYPE_SMARTCARD, MsdSmartcardClass)) +#define MSD_SMARTCARD_ERROR (msd_smartcard_error_quark ()) +typedef struct _MsdSmartcardClass MsdSmartcardClass; +typedef struct _MsdSmartcard MsdSmartcard; +typedef struct _MsdSmartcardPrivate MsdSmartcardPrivate; +typedef enum _MsdSmartcardError MsdSmartcardError; +typedef enum _MsdSmartcardState MsdSmartcardState; + +typedef struct _MsdSmartcardRequest MsdSmartcardRequest; + +struct _MsdSmartcard { + GObject parent; + + /*< private > */ + MsdSmartcardPrivate *priv; +}; + +struct _MsdSmartcardClass { + GObjectClass parent_class; + + void (* inserted) (MsdSmartcard *card); + void (* removed) (MsdSmartcard *card); +}; + +enum _MsdSmartcardError { + MSD_SMARTCARD_ERROR_GENERIC = 0, +}; + +enum _MsdSmartcardState { + MSD_SMARTCARD_STATE_INSERTED = 0, + MSD_SMARTCARD_STATE_REMOVED, +}; + +GType msd_smartcard_get_type (void) G_GNUC_CONST; +GQuark msd_smartcard_error_quark (void) G_GNUC_CONST; + +CK_SLOT_ID msd_smartcard_get_slot_id (MsdSmartcard *card); +gint msd_smartcard_get_slot_series (MsdSmartcard *card); +MsdSmartcardState msd_smartcard_get_state (MsdSmartcard *card); + +char *msd_smartcard_get_name (MsdSmartcard *card); +gboolean msd_smartcard_is_login_card (MsdSmartcard *card); + +gboolean msd_smartcard_unlock (MsdSmartcard *card, + const char *password); + +/* don't under any circumstances call these functions */ +#ifdef MSD_SMARTCARD_ENABLE_INTERNAL_API + +MsdSmartcard *_msd_smartcard_new (SECMODModule *module, + CK_SLOT_ID slot_id, + gint slot_series); +MsdSmartcard *_msd_smartcard_new_from_name (SECMODModule *module, + const char *name); + +void _msd_smartcard_set_state (MsdSmartcard *card, + MsdSmartcardState state); +#endif + +#ifdef __cplusplus +} +#endif +#endif /* MSD_SMARTCARD_H */ |