Back to index

lightning-sunbird  0.9+nobinonly
bslot.c
Go to the documentation of this file.
00001 /* ***** BEGIN LICENSE BLOCK *****
00002  * Version: MPL 1.1/GPL 2.0/LGPL 2.1
00003  *
00004  * The contents of this file are subject to the Mozilla Public License Version
00005  * 1.1 (the "License"); you may not use this file except in compliance with
00006  * the License. You may obtain a copy of the License at
00007  * http://www.mozilla.org/MPL/
00008  *
00009  * Software distributed under the License is distributed on an "AS IS" basis,
00010  * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
00011  * for the specific language governing rights and limitations under the
00012  * License.
00013  *
00014  * The Original Code is the Netscape security libraries.
00015  *
00016  * The Initial Developer of the Original Code is
00017  * Netscape Communications Corporation.
00018  * Portions created by the Initial Developer are Copyright (C) 1994-2000
00019  * the Initial Developer. All Rights Reserved.
00020  *
00021  * Contributor(s):
00022  *
00023  * Alternatively, the contents of this file may be used under the terms of
00024  * either the GNU General Public License Version 2 or later (the "GPL"), or
00025  * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
00026  * in which case the provisions of the GPL or the LGPL are applicable instead
00027  * of those above. If you wish to allow use of your version of this file only
00028  * under the terms of either the GPL or the LGPL, and not to allow others to
00029  * use your version of this file under the terms of the MPL, indicate your
00030  * decision by deleting the provisions above and replace them with the notice
00031  * and other provisions required by the GPL or the LGPL. If you do not delete
00032  * the provisions above, a recipient may use your version of this file under
00033  * the terms of any one of the MPL, the GPL or the LGPL.
00034  *
00035  * ***** END LICENSE BLOCK ***** */
00036 
00037 #ifdef DEBUG
00038 static const char CVS_ID[] = "@(#) $RCSfile: bslot.c,v $ $Revision: 1.3 $ $Date: 2005/01/20 02:25:46 $";
00039 #endif /* DEBUG */
00040 
00041 #include "builtins.h"
00042 
00043 /*
00044  * builtins/slot.c
00045  *
00046  * This file implements the NSSCKMDSlot object for the
00047  * "builtin objects" cryptoki module.
00048  */
00049 
00050 static NSSUTF8 *
00051 builtins_mdSlot_GetSlotDescription
00052 (
00053   NSSCKMDSlot *mdSlot,
00054   NSSCKFWSlot *fwSlot,
00055   NSSCKMDInstance *mdInstance,
00056   NSSCKFWInstance *fwInstance,
00057   CK_RV *pError
00058 )
00059 {
00060   return (NSSUTF8 *)nss_builtins_SlotDescription;
00061 }
00062 
00063 static NSSUTF8 *
00064 builtins_mdSlot_GetManufacturerID
00065 (
00066   NSSCKMDSlot *mdSlot,
00067   NSSCKFWSlot *fwSlot,
00068   NSSCKMDInstance *mdInstance,
00069   NSSCKFWInstance *fwInstance,
00070   CK_RV *pError
00071 )
00072 {
00073   return (NSSUTF8 *)nss_builtins_ManufacturerID;
00074 }
00075 
00076 static CK_VERSION
00077 builtins_mdSlot_GetHardwareVersion
00078 (
00079   NSSCKMDSlot *mdSlot,
00080   NSSCKFWSlot *fwSlot,
00081   NSSCKMDInstance *mdInstance,
00082   NSSCKFWInstance *fwInstance
00083 )
00084 {
00085   return nss_builtins_HardwareVersion;
00086 }
00087 
00088 static CK_VERSION
00089 builtins_mdSlot_GetFirmwareVersion
00090 (
00091   NSSCKMDSlot *mdSlot,
00092   NSSCKFWSlot *fwSlot,
00093   NSSCKMDInstance *mdInstance,
00094   NSSCKFWInstance *fwInstance
00095 )
00096 {
00097   return nss_builtins_FirmwareVersion;
00098 }
00099 
00100 static NSSCKMDToken *
00101 builtins_mdSlot_GetToken
00102 (
00103   NSSCKMDSlot *mdSlot,
00104   NSSCKFWSlot *fwSlot,
00105   NSSCKMDInstance *mdInstance,
00106   NSSCKFWInstance *fwInstance,
00107   CK_RV *pError
00108 )
00109 {
00110   return (NSSCKMDToken *)&nss_builtins_mdToken;
00111 }
00112 
00113 NSS_IMPLEMENT_DATA const NSSCKMDSlot
00114 nss_builtins_mdSlot = {
00115   (void *)NULL, /* etc */
00116   NULL, /* Initialize */
00117   NULL, /* Destroy */
00118   builtins_mdSlot_GetSlotDescription,
00119   builtins_mdSlot_GetManufacturerID,
00120   NULL, /* GetTokenPresent -- defaults to true */
00121   NULL, /* GetRemovableDevice -- defaults to false */
00122   NULL, /* GetHardwareSlot -- defaults to false */
00123   builtins_mdSlot_GetHardwareVersion,
00124   builtins_mdSlot_GetFirmwareVersion,
00125   builtins_mdSlot_GetToken,
00126   (void *)NULL /* null terminator */
00127 };