From eff8cc1f6fee587c14344a4b813b54637f18be1a Mon Sep 17 00:00:00 2001 From: aszlig Date: Mon, 6 Jun 2016 04:58:37 +0200 Subject: pkgs: Add a wrapped browser for Santander HBCI I didn't get the starcoscard to run with aqbanking so far and the bank itself is very uncooperative if it comes to giving specific details about their implementation of FinTS 3.00, so in the end I'm going to move away from the bank. But during transition this will work much better than running a Windows VM (which I didn't have access to in the meantime, so I *had* to get this running somehow), especially because we can wrap this plugin in *any* browser that supports NPAPI. Also, there seems to be some work implementing PPAPI support for pipelight, but the branch is stale since quite a while: https://bitbucket.org/mmueller2012/pipelight/branch/ppapi Going back to the pesky Santander plugin: In order to support PC/SC-Lite, we need to patch Wine to get support for the winscard API. We also patch out unixfs, so while there definitely are better sandboxing options this should suffice so that the plugin doesn't write garbage on any location of the system (basically it works entirely read-only). So in the end we get a nice and small dwb browser, which directly opens up the login page along with the plugin. The browser is wrapped so that it only writes to a temporary location, so as soon as it is closed all the cruft is cleaned up afterwards. Signed-off-by: aszlig --- pkgs/santander/winscard.patch | 11 +++++++++++ 1 file changed, 11 insertions(+) create mode 100644 pkgs/santander/winscard.patch (limited to 'pkgs/santander/winscard.patch') diff --git a/pkgs/santander/winscard.patch b/pkgs/santander/winscard.patch new file mode 100644 index 00000000..7dfa04ac --- /dev/null +++ b/pkgs/santander/winscard.patch @@ -0,0 +1,11 @@ +--- a/dlls/winscard/winscard.c 1970-01-01 01:00:01.000000000 +0100 ++++ b/dlls/winscard/winscard.c 2016-06-06 01:52:53.631444433 +0200 +@@ -1527,7 +1527,7 @@ + { + LONG lRet; + TRACE(" 0x%08X %p %p %p %p %p %p\n",(unsigned int) hCard,mszReaderNames,pcchReaderLen,pdwState,pdwProtocol,pbAtr,pcbAtrLen); +- if(!pcchReaderLen || !pdwState || !pdwProtocol || !pcbAtrLen) ++ if(!pcchReaderLen || !pcbAtrLen) + lRet = SCARD_E_INVALID_PARAMETER; + else if(!liteSCardStatus) + lRet = SCARD_F_INTERNAL_ERROR; -- cgit 1.4.1