Copyright © 2001 - 2002 SILC Project SILC Project Website | SILC Toolkit Reference Manual Index

SILC Toolkit Reference Manual
SILC Core Library
SILC Authentication Interface
SILC Message Interface
SILC Channel Interface
SILC Command Interface
SILC Notify Interface
SILC Status Types
SILC Modes
SILC ID Interface
SILC ID Cache Interface
SILC Argument Interface
SILC Attributes Interface
Packet Protocol Interface
SILC Math Library
SILC MP Interface
SILC Math Interface
SILC SFTP Library
SILC SFTP Interface
SFTP Filesystems Interface
SILC Utility Library
Basic SILC Types
SILC Buffer Interface
SILC Buffer Format Interface
SILC Hash Table Interface
SILC Logging Interface
SILC Memory Interface
SILC Mutex Interface
SILC Thread Interface
SILC Network Interface
SILC Schedule Interface
SILC Socket Interface
SILC Protocol Interface
SILC Config Interface
SILC File Util Interface
SILC String Util Interface
SILC Util Interface
SILC List Interface
SILC Dynamic List Interface
SILC VCard Interface
SILC Application Utilities
SILC Key Exchange Library
SILC SKE Interface
SKE Status Types
SKE Diffie Hellman Groups
SKE Payloads
SILC Client Library
Using SILC Client Library Tutorial
Arguments for command_reply Client Operation
SilcStatus Error Arguments in command_reply Client Operation
Arguments for notify Client Operation
Client Library Interface Reference
SILC Crypto Library
Introduction to SILC RNG
SILC RNG Interface
SILC Cipher API
SILC PKCS API
SILC PKCS#1 API
SILC Hash Interface
SILC HMAC Interface
Resource Links
SILC Project Website
SILC Protocol Documentation
SILC White Paper
SILC FAQs

Structure SilcVCard
NAME

        typedef struct { ... } SilcVCardStruct, *SilcVCard;

DESCRIPTION

        This structure is the VCard.  This holds the contents of the
        card.  When a card is parsed it is parsed into this structure.
        When creating a new card application fills this structure and
        the library encodes the card from it.  Free the allocated
        structure with silc_vcard_free function.

SOURCE

        typedef struct {
          char *full_name;          /* full name, X.520 common name */
          char *family_name;        /* last name, string */
          char *first_name;         /* first name, string */
          char *middle_names;       /* other names, string (comma sep.) */
          char *prefix;             /* honorifix prefix (Mr., Mrs.), string */
          char *suffix;             /* honorifix suffix (MD), string (comma sep.) */
          char *nickname;           /* string (comma sep. if more than one) */
          char *bday;               /* birth day, UTC date string */
          char *title;              /* job title X.520, string */
          char *role;               /* job role X.520, string */
          char *org_name;           /* organization name, string */
          char *org_unit;           /* organization unit, string */
          char *categories;         /* application category, string */
          char *catclass;           /* class (public, private, confidental), string */
          char *url;                /* home page, URI string */
          char *label;              /* formatted address label, string (same
                                       format as for 'addr' but comma sep.) */

          struct addr {
            char *type;             /* address type, string
                                       (intl, dom, home, work, pref, postal, parcel) */
            char *pbox;             /* post office box, string */
            char *ext_addr;         /* extended address, string */
            char *street_addr;      /* street address, string */
            char *city;             /* city, string */
            char *state;            /* state/province, string */
            char *code;             /* postal code, string */
            char *country;          /* country name, string */
          } *addrs;
          SilcUInt8 num_addrs;      /* number of addresses */

          struct tel {
            char *type;             /* telephone number type, string
                                       (msg, voice, home, work, pref, bbs, modem, car,
                                       cell, video, pager, isdn, fax) */
            char *telnum;           /* single telephone number, string */
          } *tels;
          SilcUInt8 num_tels;

          struct email {
            char *type;             /* email type, string (internet, pref, x400) */
            char *address;          /* single email address, string */
          } *emails;
          SilcUInt8 num_emails;

          char *note;               /* a note, string */
          char *rev;                /* revision of card, UTC date string */

          bool dynamic;             /* TRUE when dynamically allocated */
        } SilcVCardStruct, *SilcVCard;

SILC VCard SilcVCard silc_vcard_encode silc_vcard_decode silc_vcard_alloc silc_vcard_free silc_vcard_fprintf

Copyright © 2001 - 2002 SILC Project SILC Project Website | SILC Toolkit Reference Manual Index