/* * @(#)DeleteSystemStore.java 1.0 09/11/2002 * * Copyright (c) 2002 by Michel I. Gallant * * J/Direct and cryptoAPI to delete system store */ import java.io.*; class DeleteSystemStore { static final int CERT_STORE_DELETE_FLAG = 0x00010 ; static final int CERT_SYSTEM_STORE_CURRENT_USER = 0x10000 ; public static void main (String args[]) { int flags = CERT_STORE_DELETE_FLAG | CERT_SYSTEM_STORE_CURRENT_USER ; if(args.length==0) { System.out.println("\nUsage: deletesystemstore ") ; System.out.println(" Deletes the specified system store and associated certificates.") ; System.out.println(" Does NOT delete the associated key containers.\n") ; System.exit(1) ; } String storename = args[0] ; BufferedReader in = new BufferedReader(new InputStreamReader(System.in)); try { System.out.print("Do you wish to delete store \"" + storename + "\" ? (yes or no) ") ; String confirm = in.readLine().toLowerCase() ; if(!(confirm.equals("y") || confirm.equals("yes"))) { System.out.println("Cancelled store delete operation."); System.exit(1); } } //end try catch(IOException ieo) { ;} if(CertUnregisterSystemStore(storename, flags)) System.out.println("Deleted system store \"" + storename + "\"") ; else System.out.println("FAILED to delete system store \"" + storename + "\"") ; } /** @dll.import("CRYPT32",unicode) */ public native static boolean CertUnregisterSystemStore ( String SystemStoreName, int dwflags ); }