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
#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 "pcsc-nacl.h"
#include "cackey-chrome.h"

class CACKeyInstance : public pp::Instance {
	private:
		pp::Core *corePointer;







>
>
>







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
			/*
			 * 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();
				}

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



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

				certificatesPPArray.SetLength(numCertificates);








|



>
>







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 = 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

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

		}
	);

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







|
>







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",
			"smartcardManagerAppId": "khpfeaanjngmcnplbdlpegiifgpfgdco"
		}
	);

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