Check-in [c53eda4523]
Overview
Comment:ChromeOS: Fixed race with specifying the Google Smartcard Manager App ID
Downloads: Tarball | ZIP archive | SQL archive
Timelines: family | ancestors | descendants | both | trunk
Files: files | file ages | folders
SHA1: c53eda4523f5b7206dd15c747609bece7db36577
User & Date: rkeene on 2016-02-15 06:43:01
Other Links: manifest | tags
Context
2016-02-15
06:45
ChromeOS: Removed extraneous PIN clearing check-in: 4509382d11 user: rkeene tags: trunk
06:43
ChromeOS: Fixed race with specifying the Google Smartcard Manager App ID check-in: c53eda4523 user: rkeene tags: trunk
06:39
ChromeOS: Restructured initialization so that the Google PCSC Smartcard Manager App ID can be found at runtime check-in: 16b40cb47e user: rkeene tags: trunk
Changes

Modified build/chrome/cackey-chrome-init.cc from [7c0a1742a0] to [7e2a70b757].

9
10
11
12
13
14
15



16
17
18
19
20
21
22
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25







+
+
+







#include <ppapi/cpp/instance.h>
#include <ppapi/cpp/module.h>
#include <ppapi/cpp/core.h>
#include <ppapi/cpp/var.h>
#include <ppapi/cpp/var_dictionary.h>
#include <ppapi/cpp/var_array.h>
#include <ppapi/cpp/var_array_buffer.h>

#include <string.h>
#include <stdlib.h>

#include "pcsc-nacl.h"
#include "cackey-chrome.h"

class CACKeyInstance : public pp::Instance {
	private:
		pp::Core *corePointer;
50
51
52
53
54
55
56
57

58
59
60


61
62
63
64
65
66
67
53
54
55
56
57
58
59

60
61
62
63
64
65
66
67
68
69
70
71
72







-
+



+
+







			/*
			 * Do the thing we are being asked to do
			 */
			reply = new pp::VarDictionary();

			if (command.AsString() == "init") {
				if (message->HasKey("smartcardManagerAppId")) {
					smartcardManagerAppId = message->Get("smartcardManagerAppId").AsString().c_str();
					smartcardManagerAppId = strdup(message->Get("smartcardManagerAppId").AsString().c_str());
				}

				pcscNaClInit(this, corePointer, smartcardManagerAppId, "CACKey");

				free((void *) smartcardManagerAppId);

				reply->Set("status", "success");
			} else if (command.AsString() == "listcertificates") {
				numCertificates = cackey_chrome_listCertificates(&certificates);

				certificatesPPArray.SetLength(numCertificates);

Modified build/chrome/cackey.js from [95eeb58033] to [e2d53d74fa].

302
303
304
305
306
307
308
309


310
311
312
313
314
315
316
302
303
304
305
306
307
308

309
310
311
312
313
314
315
316
317







-
+
+








	/*
	 * Initialize CACKey with the correct handle to talk to the Google Smartcard Manager App
	 */
	cackeyHandle.postMessage(
		{
			"target": "cackey",
			"command": "init"
			"command": "init",
			"smartcardManagerAppId": "khpfeaanjngmcnplbdlpegiifgpfgdco"
		}
	);

	/*
	 * Start the Google PCSC Interface
	 */
	new GoogleSmartCard.PcscNacl(cackeyHandle);