Hello community,

here is the log from the commit of package aqbanking for openSUSE:Factory 
checked in at 2016-05-02 10:44:54
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/aqbanking (Old)
 and      /work/SRC/openSUSE:Factory/.aqbanking.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "aqbanking"

Changes:
--------
--- /work/SRC/openSUSE:Factory/aqbanking/aqbanking.changes      2016-04-07 
13:32:42.000000000 +0200
+++ /work/SRC/openSUSE:Factory/.aqbanking.new/aqbanking.changes 2016-05-02 
10:44:58.000000000 +0200
@@ -1,0 +2,11 @@
+Sat Apr 30 07:21:22 UTC 2016 - nico.kru...@gmail.com
+
+- Update to 5.6.10:
+  + fixes problems with some special HBCI messages
+  + support HHD 1.3.2 (Flicker codes for PIN/TAN) again
+    (thanks to Martin Kuehn)
+- Update to 5.6.9beta:
+  + support old-version Flicker codes which are still used by
+    some banks (thanks to Martin Kuehn)
+
+-------------------------------------------------------------------

Old:
----
  aqbanking-5.6.8beta.tar.gz

New:
----
  aqbanking-5.6.10.tar.gz

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ aqbanking.spec ++++++
--- /var/tmp/diff_new_pack.udBqDI/_old  2016-05-02 10:44:59.000000000 +0200
+++ /var/tmp/diff_new_pack.udBqDI/_new  2016-05-02 10:44:59.000000000 +0200
@@ -26,7 +26,7 @@
 %define          q4b_cfgmoddir  %{fronts_libdir}/q4banking/cfgmodules
 
 Name:           aqbanking
-Version:        5.6.8beta
+Version:        5.6.10
 Release:        0
 Summary:        Library for Online Banking Functions and Financial Data Import 
and Export
 License:        GPL-2.0 or GPL-3.0

++++++ aqbanking-5.6.8beta.tar.gz -> aqbanking-5.6.10.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/aqbanking-5.6.8beta/ChangeLog 
new/aqbanking-5.6.10/ChangeLog
--- old/aqbanking-5.6.8beta/ChangeLog   2016-03-11 00:20:06.000000000 +0100
+++ new/aqbanking-5.6.10/ChangeLog      2016-04-23 18:33:21.000000000 +0200
@@ -1,4 +1,34 @@
 ------------------------------------------------------------------
+2016-04-23 18:30:49 +0200 Martin Preuss
+Prepared release 5.6.10.
+
+------------------------------------------------------------------
+2016-04-18 21:01:06 +0200 Elias Oltmanns
+AqHBCI: Minor adjustments to make segment definitions comply with the specs.
+
+------------------------------------------------------------------
+2016-04-10 18:27:49 +0200 Martin Preuss
+Prepared release 5.6.9beta.
+
+------------------------------------------------------------------
+2016-04-05 07:58:01 +0200 Martin Kuehn
+ChipTAN: added support for fallback to HHD 1.3.2 if control bytes are missing
+
+------------------------------------------------------------------
+2016-03-23 22:45:50 +0100 Martin Preuss
+Moved AB_Transaction_SetEndToEndReference() to the right place.
+
+------------------------------------------------------------------
+2016-03-13 16:21:11 +0100 Martin Preuss
+aqbanking-cli: Added option "ignoreUnsupported".
+This is used with the command "aqbanking-cli request" to make the tool
+ignore requests for accounts which don't support them.
+
+Without this option an error is returned if a request is made for an account
+which does not support that request (i.e. requesting transactions for
+unsupported accounts).
+
+------------------------------------------------------------------
 2016-03-11 00:17:40 +0100 Martin Preuss
 Prepared release 5.6.8beta.
 
@@ -512,39 +542,3 @@
 ------------------------------------------------------------------
 2014-08-03 23:14:31 +0200 Martin Preuss
 AqHBCI: Fixed a typo.
-
-------------------------------------------------------------------
-2014-08-03 23:14:19 +0200 Martin Preuss
-Added new CMAKE files to .gitignore.
-
-------------------------------------------------------------------
-2014-08-03 23:07:16 +0200 Martin Preuss
-Added CMake package configuration files
-Makes live for cmake users a lot easier.
-
-It is not platform idependent as the library extension .so is hard
-coded.
-
-Signed-off-by: Martin Preuss <mar...@aquamaniac.de>
-
-------------------------------------------------------------------
-2014-08-03 19:17:42 +0200 Martin Preuss
-AqHBCI: Started working on job SepaGetStandingOrders.
-
-------------------------------------------------------------------
-2014-08-03 19:16:59 +0200 Martin Preuss
-AqBanking: Added job SepaGetStandingOrders.
-Also added handling for some other jobs in AB_Job_Type2Char() and
-AB_Job_Type2LocalChar().
-
-------------------------------------------------------------------
-2014-08-02 18:24:36 +0200 Martin Preuss
-Added test-driver to .gitingore.
-
-------------------------------------------------------------------
-2014-08-02 18:24:05 +0200 Martin Preuss
-Force IBAN and BIC for SEPA transfers and debit notes.
-The group "kti_i" his quite vague, it allows for either national or
-international specification of the local bank account, the parser can't handle
-that too well. Some jobs need SEPA info (e.g. the SEPA transfer jobs), and
-for those the parser should fail if IBAN or BIC are missing.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/aqbanking-5.6.8beta/aqbanking.iss 
new/aqbanking-5.6.10/aqbanking.iss
--- old/aqbanking-5.6.8beta/aqbanking.iss       2016-03-11 00:19:20.000000000 
+0100
+++ new/aqbanking-5.6.10/aqbanking.iss  2016-04-23 18:30:21.000000000 +0200
@@ -8,7 +8,7 @@
 [Setup]
 ; Using the name here directly because we want it capitalized
 AppName=AqBanking
-AppVerName=AqBanking 5.6.8beta
+AppVerName=AqBanking 5.6.10
 AppPublisher=AqBanking Development Team
 AppPublisherURL=http://sourceforge.net/projects/aqbanking
 AppSupportURL=http://sourceforge.net/support/getsupport.php?group_id=115695
@@ -18,7 +18,7 @@
 DirExistsWarning=no
 InfoAfterFile=README
 LicenseFile=COPYING
-OutputBaseFilename=aqbanking-5.6.8beta-setup
+OutputBaseFilename=aqbanking-5.6.10-setup
 OutputDir=.
 UninstallFilesDir={app}\uninstall\aqbanking
 
@@ -151,9 +151,9 @@
   StringChange(FileString, '@'+'aqbanking_pkgdatadir@', pkgdatadir);
   StringChange(FileString, '@'+'AQBANKING_VERSION_MAJOR@', '5');
   StringChange(FileString, '@'+'AQBANKING_VERSION_MINOR@', '6');
-  StringChange(FileString, '@'+'AQBANKING_VERSION_PATCHLEVEL@', '8');
+  StringChange(FileString, '@'+'AQBANKING_VERSION_PATCHLEVEL@', '10');
   StringChange(FileString, '@'+'AQBANKING_VERSION_BUILD@', '0');
-  StringChange(FileString, '@'+'AQBANKING_VERSION_TAG@', 'beta');
+  StringChange(FileString, '@'+'AQBANKING_VERSION_TAG@', 'stable');
 
   StringChange(FileString, '@'+'cbanking_libs@', '-L' + bindir + ' 
@cbanking_libs@');
   StringChange(FileString, '@'+'cbanking_includes@', '-I'+includedir);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/aqbanking-5.6.8beta/aqbanking.spec 
new/aqbanking-5.6.10/aqbanking.spec
--- old/aqbanking-5.6.8beta/aqbanking.spec      2016-03-11 00:19:20.000000000 
+0100
+++ new/aqbanking-5.6.10/aqbanking.spec 2016-04-23 18:30:21.000000000 +0200
@@ -2,7 +2,7 @@
 # neededforbuild gwenhywfar gwenhywfar-devel ktoblzcheck python python-ctypes 
pyyxml libchipcard2-devel libchipcard2 pkgconfig gettext-devel libacl-devel 
libacl libattr-devel libattr
 
 %define name aqbanking
-%define version 5.6.8beta
+%define version 5.6.10
 
 %define dist    Ubuntu
 %define disttag ubuntu
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/aqbanking-5.6.8beta/configure 
new/aqbanking-5.6.10/configure
--- old/aqbanking-5.6.8beta/configure   2016-03-11 00:19:03.000000000 +0100
+++ new/aqbanking-5.6.10/configure      2016-04-23 18:30:04.000000000 +0200
@@ -2743,9 +2743,9 @@
 
 AQBANKING_VERSION_MAJOR=5
 AQBANKING_VERSION_MINOR=6
-AQBANKING_VERSION_PATCHLEVEL=8
+AQBANKING_VERSION_PATCHLEVEL=10
 AQBANKING_VERSION_BUILD=0
-AQBANKING_VERSION_TAG="beta"
+AQBANKING_VERSION_TAG="stable"
 
 
 
@@ -2760,7 +2760,7 @@
 
 AQBANKING_SO_CURRENT=40
 AQBANKING_SO_AGE=5
-AQBANKING_SO_REVISION=8
+AQBANKING_SO_REVISION=10
 AQBANKING_SO_EFFECTIVE="`echo \$(($AQBANKING_SO_CURRENT-$AQBANKING_SO_AGE))`"
 
 #
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/aqbanking-5.6.8beta/configure.ac 
new/aqbanking-5.6.10/configure.ac
--- old/aqbanking-5.6.8beta/configure.ac        2016-03-11 00:18:45.000000000 
+0100
+++ new/aqbanking-5.6.10/configure.ac   2016-04-23 18:29:09.000000000 +0200
@@ -25,10 +25,10 @@
 
 AQBANKING_VERSION_MAJOR=5
 AQBANKING_VERSION_MINOR=6
-AQBANKING_VERSION_PATCHLEVEL=8
+AQBANKING_VERSION_PATCHLEVEL=10
 AQBANKING_VERSION_BUILD=0
 dnl "stable", "rcX", "betaX", "svn"
-AQBANKING_VERSION_TAG="beta"
+AQBANKING_VERSION_TAG="stable"
 
 
 
@@ -43,7 +43,7 @@
 
 AQBANKING_SO_CURRENT=40
 AQBANKING_SO_AGE=5
-AQBANKING_SO_REVISION=8
+AQBANKING_SO_REVISION=10
 AQBANKING_SO_EFFECTIVE="`echo \$(($AQBANKING_SO_CURRENT-$AQBANKING_SO_AGE))`"
 
 #
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/aqbanking-5.6.8beta/src/plugins/backends/aqhbci/plugin/applayer/hhd.c 
new/aqbanking-5.6.10/src/plugins/backends/aqhbci/plugin/applayer/hhd.c
--- old/aqbanking-5.6.8beta/src/plugins/backends/aqhbci/plugin/applayer/hhd.c   
2015-12-20 20:45:17.000000000 +0100
+++ new/aqbanking-5.6.10/src/plugins/backends/aqhbci/plugin/applayer/hhd.c      
2016-04-10 16:32:53.000000000 +0200
@@ -102,6 +102,8 @@
   unsigned int numCtrlBytes;
   unsigned int moreCtrlBytes;
   unsigned int numBytes;
+  /* preset bit masks for HHD 1.4 */
+  unsigned int maskLen = 0x3f;
 
   /* read LC */
   rv=AH_HHD14_ReadBytesHex(code, 2);
@@ -132,7 +134,7 @@
   moreCtrlBytes = LSandFlags & 0x80;
 
   while (moreCtrlBytes) {
-    rv=AH_HHD14_ReadBytesHex(code+numCtrlBytes*2, 2);                 /* LS */
+    rv=AH_HHD14_ReadBytesHex(code+numCtrlBytes*2, 2);
     if (rv<0) {
       DBG_INFO(AQHBCI_LOGDOMAIN, "here (%d) at [%s]", rv, code);
       return rv;
@@ -140,7 +142,11 @@
     numCtrlBytes++;
     moreCtrlBytes = (unsigned int) rv & 0x80;
   }
-  numBytes = (LSandFlags & 0x3f) + numCtrlBytes;
+  if (numCtrlBytes == 0) {
+    /* set bit mask for HHD 1.3.2 */
+    maskLen = 0x0f;
+  }
+  numBytes = (LSandFlags & maskLen) + numCtrlBytes;
   GWEN_Buffer_AppendBytes(xbuf, code, numBytes*2);
   code += numBytes*2;
   i += numBytes + 2;         /* add length of LC and LS */
@@ -155,7 +161,7 @@
       return rv;
     }
 /*    v=((unsigned int) rv) & 0xf; */
-    v=((unsigned int) rv) & 0x3f; /* as suggested by Martin Kuehn */
+    v=((unsigned int) rv) & maskLen;
     code+=2;
     if (i+v+1 > len) {
       DBG_INFO(AQHBCI_LOGDOMAIN, "try to read past the end of code (%d) at 
[%s]", v, code);
@@ -268,6 +274,11 @@
   unsigned int inLen;
   unsigned int outLenAndFlags;
   unsigned int outLen;
+  /* preset bit masks for HHD 1.4 */
+  unsigned int maskLen = 0x3f;
+  unsigned int maskAscFlag = 0x40;
+  unsigned int maskCtlFlag = 0x80;
+
   int rv;
   GWEN_BUFFER *xbuf;
   char numbuf[16];
@@ -295,17 +306,17 @@
     return rv;
   }
   inLenAndFlags=(unsigned int) rv;
-  inLen=inLenAndFlags & 0x3f;
+  inLen=inLenAndFlags & maskLen;
   code+=2;
 
   outLen=(inLen+1)/2;
-  outLenAndFlags=outLen | (inLenAndFlags & 0x80);
+  outLenAndFlags=outLen | (inLenAndFlags & maskCtlFlag);
   snprintf(numbuf, sizeof(numbuf)-1, "%02x", outLenAndFlags);
   numbuf[sizeof(numbuf)-1]=0;
   GWEN_Buffer_AppendString(xbuf, numbuf);
 
   /* copy control bytes, if necessary */
-  if (inLenAndFlags & 0x80) {
+  if (inLenAndFlags & maskCtlFlag) {
     unsigned int ctrl=0;
 
     do {
@@ -322,7 +333,12 @@
       numbuf[sizeof(numbuf)-1]=0;
       GWEN_Buffer_AppendString(xbuf, numbuf);
       code+=2;
-    } while (ctrl & 0x80);
+    } while (ctrl & maskCtlFlag);
+  }
+  else {
+    DBG_ERROR(AQHBCI_LOGDOMAIN, "no control bytes fallback to HHD 1.3.2");
+    maskLen = 0xf;
+    maskAscFlag = 0x10;
   }
 
   if (inLen) {
@@ -335,7 +351,7 @@
 
   /* read DE's */
   while (*code) {
-    /* length is in dec and contains flags */
+    /* input length is in dec usually no AscFlag for DE's is provided */
     rv=AH_HHD14_ReadBytesDec(code, 2);
     if (rv<0) {
       DBG_INFO(AQHBCI_LOGDOMAIN, "here (%d)", rv);
@@ -343,29 +359,28 @@
       return rv;
     }
     inLenAndFlags=(unsigned int) rv;
-    inLen=inLenAndFlags & 0x3f;
+    inLen=inLenAndFlags & maskLen;
     code+=2;
 
-    /* check whether we need to switch to ASC */
-    if ((inLenAndFlags & 0x40)==0) {
+    /* so we have to check whether we need to switch to ASC */
+    if ((inLenAndFlags & maskAscFlag)==0) {
       int i;
 
       for (i=0; i<inLen; i++) {
         if (code[i]<'0' || code[i]>'9'){
-         /* contains something other than digits, use ascii encoding */
-         DBG_ERROR(AQHBCI_LOGDOMAIN, "Switched to ASCII");
-          inLenAndFlags|=0x40;
+               /* contains something other than digits, use ascii encoding */
+               DBG_ERROR(AQHBCI_LOGDOMAIN, "Switched to ASCII");
+          inLenAndFlags|=maskAscFlag;
           break;
         }
       }
     }
 
     /* write to outbuffer */
-    if (inLenAndFlags & 0x40) {
+    if (inLenAndFlags & maskAscFlag) {
       /* ascii */
-      //outLen=(inLen+1)/2;
       outLen=inLen;
-      outLenAndFlags=outLen | 0x40; /* add encoding flag to length (bit 6) */
+      outLenAndFlags=outLen | maskAscFlag; /* add encoding flag to length (bit 
6 or 4) */
       snprintf(numbuf, sizeof(numbuf)-1, "%02x", outLenAndFlags);
       numbuf[sizeof(numbuf)-1]=0;
       GWEN_Buffer_AppendString(xbuf, numbuf);
@@ -375,7 +390,7 @@
       code+=inLen;
     }
     else {
-      /* bcd */
+      /* bcd, pack 2 digits into 1 Byte */
       outLen=(inLen+1)/2;
       outLenAndFlags=outLen;
       snprintf(numbuf, sizeof(numbuf)-1, "%02x", outLenAndFlags);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/aqbanking-5.6.8beta/src/plugins/backends/aqhbci/plugin/applayer/xml/fints300seg.xml
 
new/aqbanking-5.6.10/src/plugins/backends/aqhbci/plugin/applayer/xml/fints300seg.xml
--- 
old/aqbanking-5.6.8beta/src/plugins/backends/aqhbci/plugin/applayer/xml/fints300seg.xml
     2016-01-07 23:10:21.000000000 +0100
+++ 
new/aqbanking-5.6.10/src/plugins/backends/aqhbci/plugin/applayer/xml/fints300seg.xml
        2016-04-22 16:39:17.000000000 +0200
@@ -440,7 +440,7 @@
    <ELEM name="version" type="num" maxsize="3" />
    <ELEM name="ignoreUPDJobs" type="num" maxsize="1" />
    <ELEM name="userName" type="ascii" maxsize="35" minnum="0" />
-   <ELEM name="genericExt" type="ascii" maxsize="2048" minnum="0" />
+   <ELEM name="genericExt" type="an" maxsize="2048" minnum="0" />
 
    <VALUES>
      <VALUE path="head/code">%code</VALUE>
@@ -489,8 +489,8 @@
    <ELEM name="customer" type="ascii" maxsize="65" trustlevel="3" />
    <ELEM name="type" type="num" maxsize="2" minnum="0" />
    <ELEM name="currency" type="an" maxsize="65" minnum="0" />
-   <ELEM name="name1" type="an" maxsize="27" />
-   <ELEM name="name2" type="an" maxsize="27" minnum="0" />
+   <ELEM name="name1" type="an" maxsize="35" />
+   <ELEM name="name2" type="an" maxsize="35" minnum="0" />
    <ELEM name="account/name" type="an" maxsize="30" minnum="0" />
    <GROUP type="limit" name="limit" minnum="0" trustlevel="4" version="1" />
    <GROUP type="updjob" name="updjob" minnum="0" maxnum="999" version="1" />
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/aqbanking-5.6.8beta/src/plugins/backends/aqofxconnect/version.h 
new/aqbanking-5.6.10/src/plugins/backends/aqofxconnect/version.h
--- old/aqbanking-5.6.8beta/src/plugins/backends/aqofxconnect/version.h 
2016-03-11 00:19:20.000000000 +0100
+++ new/aqbanking-5.6.10/src/plugins/backends/aqofxconnect/version.h    
2016-04-23 18:30:21.000000000 +0200
@@ -16,11 +16,11 @@
 
 #define AQOFXCONNECT_VERSION_MAJOR 5
 #define AQOFXCONNECT_VERSION_MINOR 6
-#define AQOFXCONNECT_VERSION_PATCHLEVEL 8
+#define AQOFXCONNECT_VERSION_PATCHLEVEL 10
 #define AQOFXCONNECT_VERSION_BUILD 0
-#define AQOFXCONNECT_VERSION_TAG "beta"
-#define AQOFXCONNECT_VERSION_FULL_STRING "5.6.8.0beta"
-#define AQOFXCONNECT_VERSION_STRING "5.6.8"
+#define AQOFXCONNECT_VERSION_TAG "stable"
+#define AQOFXCONNECT_VERSION_FULL_STRING "5.6.10.0stable"
+#define AQOFXCONNECT_VERSION_STRING "5.6.10"
 
 
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/aqbanking-5.6.8beta/src/tools/aqbanking-cli/request.c 
new/aqbanking-5.6.10/src/tools/aqbanking-cli/request.c
--- old/aqbanking-5.6.8beta/src/tools/aqbanking-cli/request.c   2014-08-04 
21:32:44.000000000 +0200
+++ new/aqbanking-5.6.10/src/tools/aqbanking-cli/request.c      2016-03-13 
16:19:28.000000000 +0100
@@ -46,6 +46,7 @@
   int reqSto=0;
   int reqSepaSto=0;
   int reqDT=0;
+  int ignoreUnsupported=0;
   GWEN_TIME *fromTime=0;
   GWEN_TIME *toTime=0;
   AB_JOB_LIST2 *jobList;
@@ -172,6 +173,17 @@
     "Request dated transfers"     /* long description */
   },
   {
+    0,                
+    GWEN_ArgsType_Int,
+    "ignoreUnsupported",
+    0,  
+    1,  
+    0, 
+    "ignoreUnsupported",
+    "let AqBanking ignore unsupported requests for accounts",
+    "let AqBanking ignore unsupported requests for accounts",
+  },
+  {
     GWEN_ARGS_FLAGS_HAS_ARGUMENT, /* flags */
     GWEN_ArgsType_Char,            /* type */
     "fromDate",                   /* name */
@@ -193,6 +205,7 @@
     "Specify the first date for which transactions are wanted (YYYYMMDD)", /* 
short */
     "Specify the first date for which transactions are wanted (YYYYMMDD)" /* 
long */
   },
+
   {
     GWEN_ARGS_FLAGS_HELP | GWEN_ARGS_FLAGS_LAST, /* flags */
     GWEN_ArgsType_Int,            /* type */
@@ -228,6 +241,7 @@
     return 0;
   }
 
+  ignoreUnsupported=GWEN_DB_GetIntValue(db, "ignoreUnsupported", 0, 0);
   reqTrans=GWEN_DB_GetIntValue(db, "reqTrans", 0, 0);
   reqBalance=GWEN_DB_GetIntValue(db, "reqBalance", 0, 0);
   reqSto=GWEN_DB_GetIntValue(db, "reqSto", 0, 0);
@@ -306,7 +320,41 @@
       a=AB_Account_List2Iterator_Data(ait);
       assert(a);
       while(a) {
-        int matches=1;
+       int matches=1;
+        GWEN_BUFFER *accNameBuf;
+
+        accNameBuf=GWEN_Buffer_new(0, 256, 0, 1);
+
+        s=AB_Account_GetBankName(a);
+        if (s) {
+          GWEN_Buffer_AppendString(accNameBuf, " Bank Name: ");
+          GWEN_Buffer_AppendString(accNameBuf, s);
+        }
+
+        s=AB_Account_GetBankCode(a);
+        if (s) {
+          GWEN_Buffer_AppendString(accNameBuf, " Bank Code: ");
+          GWEN_Buffer_AppendString(accNameBuf, s);
+        }
+
+        s=AB_Account_GetAccountName(a);
+        if (s) {
+          GWEN_Buffer_AppendString(accNameBuf, " Account Name: ");
+          GWEN_Buffer_AppendString(accNameBuf, s);
+        }
+
+        s=AB_Account_GetAccountNumber(a);
+        if (s) {
+          GWEN_Buffer_AppendString(accNameBuf, " Account Num: ");
+          GWEN_Buffer_AppendString(accNameBuf, s);
+        }
+
+        s=AB_Account_GetSubAccountId(a);
+        if (s) {
+          GWEN_Buffer_AppendString(accNameBuf, " Account Suffix: ");
+          GWEN_Buffer_AppendString(accNameBuf, s);
+        }
+
 
         if (matches && bankId) {
           s=AB_Account_GetBankCode(a);
@@ -339,118 +387,176 @@
         }
 
         if (matches) {
+
           if (reqTrans) {
             AB_JOB *j;
 
            j=AB_JobGetTransactions_new(a);
            rv=AB_Job_CheckAvailability(j);
-           if (rv<0) {
-             DBG_ERROR(0,
-                       "Error requesting transactions for %s/%s: %d",
-                       AB_Account_GetBankCode(a),
-                       AB_Account_GetAccountNumber(a),
-                       rv);
-             AB_Account_List2Iterator_free(ait);
-             AB_Account_List2_free(al);
-             AB_Job_List2_FreeAll(jobList);
-             GWEN_Time_free(toTime);
-             GWEN_Time_free(fromTime);
-             return 3;
+            if (rv>=0) {
+              if (fromTime)
+                AB_JobGetTransactions_SetFromTime(j, fromTime);
+              if (toTime)
+                AB_JobGetTransactions_SetToTime(j, toTime);
+              AB_Job_List2_PushBack(jobList, j);
+              requests++;
+            }
+            else {
+              if (ignoreUnsupported) {
+                DBG_ERROR(0,
+                          "Ignoring transfer request for %s: %d",
+                          GWEN_Buffer_GetStart(accNameBuf),
+                          rv);
+                AB_Job_free(j);
+              }
+              else {
+                DBG_ERROR(0,
+                          "Error requesting transfers for %s: %d",
+                          GWEN_Buffer_GetStart(accNameBuf),
+                          rv);
+                GWEN_Buffer_free(accNameBuf);
+                AB_Account_List2Iterator_free(ait);
+                AB_Account_List2_free(al);
+                AB_Job_List2_FreeAll(jobList);
+                GWEN_Time_free(toTime);
+                GWEN_Time_free(fromTime);
+                return 3;
+              }
            }
-            if (fromTime)
-             AB_JobGetTransactions_SetFromTime(j, fromTime);
-            if (toTime)
-             AB_JobGetTransactions_SetToTime(j, toTime);
+          }
 
-            AB_Job_List2_PushBack(jobList, j);
-           requests++;
-         }
          if (reqBalance) {
             AB_JOB *j;
 
            j=AB_JobGetBalance_new(a);
            rv=AB_Job_CheckAvailability(j);
-           if (rv<0) {
-             DBG_ERROR(0,
-                       "Error requesting balance for %s/%s: %d",
-                       AB_Account_GetBankCode(a),
-                       AB_Account_GetAccountNumber(a),
-                       rv);
-             AB_Account_List2Iterator_free(ait);
-             AB_Account_List2_free(al);
-             AB_Job_List2_FreeAll(jobList);
-             GWEN_Time_free(toTime);
-             GWEN_Time_free(fromTime);
-             return 3;
+            if (rv>=0) {
+              AB_Job_List2_PushBack(jobList, j);
+              requests++;
+            }
+            else {
+              if (ignoreUnsupported) {
+                DBG_ERROR(0,
+                          "Ignoring balance request for %s: %d",
+                          GWEN_Buffer_GetStart(accNameBuf),
+                          rv);
+                AB_Job_free(j);
+              }
+              else {
+                DBG_ERROR(0,
+                          "Error requesting balance for %s: %d",
+                          GWEN_Buffer_GetStart(accNameBuf),
+                          rv);
+                GWEN_Buffer_free(accNameBuf);
+                AB_Account_List2Iterator_free(ait);
+                AB_Account_List2_free(al);
+                AB_Job_List2_FreeAll(jobList);
+                GWEN_Time_free(toTime);
+                GWEN_Time_free(fromTime);
+                return 3;
+              }
            }
-            AB_Job_List2_PushBack(jobList, j);
-            requests++;
           }
           if (reqSto) {
             AB_JOB *j;
 
            j=AB_JobGetStandingOrders_new(a);
            rv=AB_Job_CheckAvailability(j);
-           if (rv<0) {
-             DBG_ERROR(0,
-                       "Error requesting standing order for %s/%s: %d",
-                       AB_Account_GetBankCode(a),
-                       AB_Account_GetAccountNumber(a),
-                       rv);
-             AB_Account_List2Iterator_free(ait);
-             AB_Account_List2_free(al);
-             AB_Job_List2_FreeAll(jobList);
-             GWEN_Time_free(toTime);
-             GWEN_Time_free(fromTime);
-             return 3;
+            if (rv>=0) {
+              AB_Job_List2_PushBack(jobList, j);
+              requests++;
+            }
+            else {
+              if (ignoreUnsupported) {
+                DBG_ERROR(0,
+                          "Ignoring standing order request for %s: %d",
+                          GWEN_Buffer_GetStart(accNameBuf),
+                          rv);
+                AB_Job_free(j);
+              }
+              else {
+                DBG_ERROR(0,
+                          "Error requesting standing orders for %s: %d",
+                          GWEN_Buffer_GetStart(accNameBuf),
+                          rv);
+                GWEN_Buffer_free(accNameBuf);
+                AB_Account_List2Iterator_free(ait);
+                AB_Account_List2_free(al);
+                AB_Job_List2_FreeAll(jobList);
+                GWEN_Time_free(toTime);
+                GWEN_Time_free(fromTime);
+                return 3;
+              }
            }
-            AB_Job_List2_PushBack(jobList, j);
-           requests++;
          }
           if (reqSepaSto) {
             AB_JOB *j;
 
            j=AB_JobSepaGetStandingOrders_new(a);
            rv=AB_Job_CheckAvailability(j);
-           if (rv<0) {
-             DBG_ERROR(0,
-                       "Error requesting SEPA standing order for %s/%s: %d",
-                       AB_Account_GetBankCode(a),
-                       AB_Account_GetAccountNumber(a),
-                       rv);
-             AB_Account_List2Iterator_free(ait);
-             AB_Account_List2_free(al);
-             AB_Job_List2_FreeAll(jobList);
-             GWEN_Time_free(toTime);
-             GWEN_Time_free(fromTime);
-             return 3;
+            if (rv>=0) {
+              AB_Job_List2_PushBack(jobList, j);
+              requests++;
+            }
+            else {
+              if (ignoreUnsupported) {
+                DBG_ERROR(0,
+                          "Ignoring SEPA standing order request for %s: %d",
+                          GWEN_Buffer_GetStart(accNameBuf),
+                          rv);
+                AB_Job_free(j);
+              }
+              else {
+                DBG_ERROR(0,
+                          "Error requesting SEPA standing orders for %s: %d",
+                          GWEN_Buffer_GetStart(accNameBuf),
+                          rv);
+                GWEN_Buffer_free(accNameBuf);
+                AB_Account_List2Iterator_free(ait);
+                AB_Account_List2_free(al);
+                AB_Job_List2_FreeAll(jobList);
+                GWEN_Time_free(toTime);
+                GWEN_Time_free(fromTime);
+                return 3;
+              }
            }
-            AB_Job_List2_PushBack(jobList, j);
-           requests++;
          }
          if (reqDT) {
             AB_JOB *j;
 
            j=AB_JobGetDatedTransfers_new(a);
            rv=AB_Job_CheckAvailability(j);
-           if (rv<0) {
-             DBG_ERROR(0,
-                       "Error requesting dated transfers for %s/%s: %d",
-                       AB_Account_GetBankCode(a),
-                       AB_Account_GetAccountNumber(a),
-                       rv);
-             AB_Account_List2Iterator_free(ait);
-             AB_Account_List2_free(al);
-             AB_Job_List2_FreeAll(jobList);
-             GWEN_Time_free(toTime);
-             GWEN_Time_free(fromTime);
-             return 3;
+            if (rv>=0) {
+              AB_Job_List2_PushBack(jobList, j);
+              requests++;
+            }
+            else {
+              if (ignoreUnsupported) {
+                DBG_ERROR(0,
+                          "Ignoring dated transfers request for %s: %d",
+                          GWEN_Buffer_GetStart(accNameBuf),
+                          rv);
+                AB_Job_free(j);
+              }
+              else {
+                DBG_ERROR(0,
+                          "Error requesting dated transfers for %s: %d",
+                          GWEN_Buffer_GetStart(accNameBuf),
+                          rv);
+                GWEN_Buffer_free(accNameBuf);
+                AB_Account_List2Iterator_free(ait);
+                AB_Account_List2_free(al);
+                AB_Job_List2_FreeAll(jobList);
+                GWEN_Time_free(toTime);
+                GWEN_Time_free(fromTime);
+                return 3;
+              }
            }
-            AB_Job_List2_PushBack(jobList, j);
-           requests++;
-         }
+          }
        }
 
+        GWEN_Buffer_free(accNameBuf);
+
         a=AB_Account_List2Iterator_Next(ait);
       }
       AB_Account_List2Iterator_free(ait);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/aqbanking-5.6.8beta/src/tools/aqbanking-cli/util.c 
new/aqbanking-5.6.10/src/tools/aqbanking-cli/util.c
--- old/aqbanking-5.6.8beta/src/tools/aqbanking-cli/util.c      2016-03-04 
17:25:19.000000000 +0100
+++ new/aqbanking-5.6.10/src/tools/aqbanking-cli/util.c 2016-03-23 
22:45:14.000000000 +0100
@@ -234,10 +234,6 @@
     return 0;
   }
 
-  s=GWEN_DB_GetCharValue(db, "endToEndReference", 0, 0);
-  if (s && *s)
-    AB_Transaction_SetEndToEndReference(t, s);
-
 
   // dated transfer
   s=GWEN_DB_GetCharValue(db, "executionDate", 0, 0);
@@ -441,6 +437,10 @@
     return NULL;
   }
 
+  s=GWEN_DB_GetCharValue(db, "endToEndReference", 0, 0);
+  if (s && *s)
+    AB_Transaction_SetEndToEndReference(t, s);
+
   /* dated transfer, SEPA debit notes */
   s=GWEN_DB_GetCharValue(db, "executionDate", 0, 0);
   if (s && *s) {
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/aqbanking-5.6.8beta/version.h 
new/aqbanking-5.6.10/version.h
--- old/aqbanking-5.6.8beta/version.h   2016-03-11 00:19:20.000000000 +0100
+++ new/aqbanking-5.6.10/version.h      2016-04-23 18:30:21.000000000 +0200
@@ -13,15 +13,15 @@
 
 #define AQBANKING_VERSION_MAJOR 5
 #define AQBANKING_VERSION_MINOR 6
-#define AQBANKING_VERSION_PATCHLEVEL 8
+#define AQBANKING_VERSION_PATCHLEVEL 10
 #define AQBANKING_VERSION_BUILD 0
-#define AQBANKING_VERSION_TAG "beta"
-#define AQBANKING_VERSION_FULL_STRING "5.6.8.0beta"
-#define AQBANKING_VERSION_STRING "5.6.8"
+#define AQBANKING_VERSION_TAG "stable"
+#define AQBANKING_VERSION_FULL_STRING "5.6.10.0stable"
+#define AQBANKING_VERSION_STRING "5.6.10"
 
 
 #define AQBANKING_SO_CURRENT 40
-#define AQBANKING_SO_REVISION 8
+#define AQBANKING_SO_REVISION 10
 #define AQBANKING_SO_AGE 5
 #define AQBANKING_SO_EFFECTIVE 35
 


Reply via email to