Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package libofx for openSUSE:Factory checked 
in at 2021-10-16 22:47:17
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/libofx (Old)
 and      /work/SRC/openSUSE:Factory/.libofx.new.1890 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "libofx"

Sat Oct 16 22:47:17 2021 rev:38 rq:925657 version:0.10.3

Changes:
--------
--- /work/SRC/openSUSE:Factory/libofx/libofx.changes    2021-03-10 
08:58:42.994979482 +0100
+++ /work/SRC/openSUSE:Factory/.libofx.new.1890/libofx.changes  2021-10-16 
22:47:53.932704996 +0200
@@ -1,0 +2,14 @@
+Thu Oct 14 09:55:15 UTC 2021 - Christophe Giboudeaux <christo...@krop.fr>
+
+- Update to 0.10.3:
+  * Fix gmt offset seconds
+  * Fix various typos in source code
+
+-------------------------------------------------------------------
+Sun Sep 19 09:44:53 UTC 2021 - Christophe Giboudeaux <christo...@krop.fr>
+
+- Update to 0.10.2
+  * Improved imported date stability
+  * Respect --libdir for opensp. Don't override docdir.
+
+-------------------------------------------------------------------

Old:
----
  0.10.1.tar.gz

New:
----
  0.10.3.tar.gz

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

Other differences:
------------------
++++++ libofx.spec ++++++
--- /var/tmp/diff_new_pack.m2eoRy/_old  2021-10-16 22:47:54.360705356 +0200
+++ /var/tmp/diff_new_pack.m2eoRy/_new  2021-10-16 22:47:54.360705356 +0200
@@ -17,7 +17,7 @@
 
 
 Name:           libofx
-Version:        0.10.1
+Version:        0.10.3
 Release:        0
 Summary:        OFX Command Parser and API
 License:        GPL-2.0-or-later
@@ -70,6 +70,12 @@
 chmod -x doc/ofx_sample_files/ofx_spec160_stmtrs_example.sgml
 
 %build
+# Leap 15 has gengetopt 2.22 and needs the typo
+sed -i 's#unnamed-opts#unamed-opts#' {ofxconnect,ofxdump}/Makefile.am
+
+# lto causes build issues on leap and armv7l
+%define _lto_cflags %{nil}
+
 sh autogen.sh
 %configure --disable-static --with-opensp-libs=%{_libdir}
 %make_build docdir=%{_defaultdocdir}/%{name}

++++++ 0.10.1.tar.gz -> 0.10.3.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libofx-0.10.1/ChangeLog new/libofx-0.10.3/ChangeLog
--- old/libofx-0.10.1/ChangeLog 2021-01-25 22:10:19.000000000 +0100
+++ new/libofx-0.10.3/ChangeLog 2021-09-29 22:12:28.000000000 +0200
@@ -17,7 +17,7 @@
        * Apply patch by Geert Janssens to fix crash on invalid date format 
 
 2010-04-27  Benoit Gr??goire <beno...@coeus.ca>
-       * Patch by ajseward with some additional fixes to allow wraping the 
library in python.
+       * Patch by ajseward with some additional fixes to allow wrapping the 
library in python.
 
 2010-02-04  Benoit Gr??goire <beno...@coeus.ca>
        * Applied a patch provided by Thomas Baumgart which fixes bug #5 
(Transaction posting date off by one)
@@ -87,12 +87,12 @@
           encoding, and uses libiconv (if available) to convert the encoding 
since OpenSP 
           can't do it.  The default output is now UTF-8.  This will "do the 
right thing" 
           for Gnucash 2 and any client that uses UTF-8 strings, but we should 
add an interface 
-          to let the client chose his prefered output encoding.
+          to let the client chose his preferred output encoding.
 
 9/1/2007:  Benoit Gr??goire  <beno...@coeus.ca>
        * Adapted patch by Christian Lupien <lupien @at@ 
physique.usherbrooke.ca> to add 
           processing of the different bank account types in OfxPaymentRequest. 
 Took this
-          oportunity to correct an API duplication problem before it get's 
even more 
+          opportunity to correct an API duplication problem before it get's 
even more 
           complicated to fix:  deleted OfxAccountInfo (OfxAccountData should 
be used instead)
           and the global scopt AccountType enum (use the one in 
OfxAccountData).
          Both of these changes will require source code change in aqbanking.
@@ -111,9 +111,9 @@
 25/8/2006:  Benoit Gr??goire  <beno...@coeus.ca>
        * Fix datatype mismatch in ofx_preproc.cpp
        * Fix gengetopt related build problems on debian based distribution.
-       * Remove massage about dependency on Qt, qhich is no longuer true
+       * Remove massage about dependency on Qt, which is no longer true
        * Fix ofxconnect headers not being distributed
-       * Remove cmdline.c and cmdline.h which shouldn't be versionned
+       * Remove cmdline.c and cmdline.h which shouldn't be versioned
        * Release 0.8.2
 
 3/8/2006 David Resier <dbrei...@earthlink.net>
@@ -164,9 +164,9 @@
 17/12/2005 Ace Jones <acejo...@users.sf.net>
        * Fixed ofxdump to give a reasonable error if you run it on a file that
          doesn't exist.
-       * Added proper libcurl.m4 to check for existence & compilability of
+       * Added proper libcurl.m4 to check for existence & compatibility of
          libcurl
-       * Make libcurl optional again by handling its absense in ofxconnect
+       * Make libcurl optional again by handling its absence in ofxconnect
 
 17/11/2005 Martin Preuss <aquaman...@users.sf.net>
        * added pkg-config file to spec file
@@ -192,7 +192,7 @@
 
 31/7/2005:  Benoit Gr??goire  <beno...@coeus.ca>
        * Release 0.8.0
-       * configure.in:  Update libtool version number.  Make curl check fatal 
untill there is code to conditionally not compile ofxconnect when CURL is 
unavailable.
+       * configure.in:  Update libtool version number.  Make curl check fatal 
until there is code to conditionally not compile ofxconnect when CURL is 
unavailable.
        * Fix the build system so that discheck will finally run properly.
 
 11/7/2005 Ace Jones <acejo...@users.sf.net>
@@ -251,7 +251,7 @@
        * Autoconf fixes from Martin Preuss
 
 23/4/2004  Benoit Gr??goire  <beno...@coeus.ca>
-       * At long last, a flexible and extendable command line parser is used 
in ofxdump.  This was essential for debuging, and even more essential for 
developing Direct Connect.  Immediate benefits are that you can set the desired 
debug output without recompiling.  Check ofxdump --help for options.
+       * At long last, a flexible and extendable command line parser is used 
in ofxdump.  This was essential for debugging, and even more essential for 
developing Direct Connect.  Immediate benefits are that you can set the desired 
debug output without recompiling.  Check ofxdump --help for options.
        * configure.in:  gengetopt will be used if available. 
        * lib/Makefile.am:
        * ofxdump/Makefile.am
@@ -271,7 +271,7 @@
        * lib/tree.hh:  Upgrade to latest version
 
 31/3/2004  Benoit Gr??goire  <beno...@coeus.ca>
-       * lib/context.cpp,hh: New files.  Create a global libofx object to 
allow the library to cleanly keep state.  This will allow much cleanup, and is 
needed for the move to a DOM style interface.  Other files ajusted to match.
+       * lib/context.cpp,hh: New files.  Create a global libofx object to 
allow the library to cleanly keep state.  This will allow much cleanup, and is 
needed for the move to a DOM style interface.  Other files adjusted to match.
 
 7/3/2004  Benoit Gr??goire  <beno...@coeus.ca>
        * lib/ofc_sgml.cpp/hh: New files.  Splits code path for OFC and OFX to 
keep things understandeable.  Some more OFC parsing.  Now waiting to implement 
global libofx context object passed everywhere to make further progress.
@@ -280,7 +280,7 @@
 3/3/2004  Benoit Gr??goire  <beno...@coeus.ca>
        * Many...
        * lib/file_preproc.cpp, lib/file_preproc.hh: Add file format 
autodetection architecture, can currently distinguish between OFX and OFC 
files.  Note that because of this change, the main entry point of the library 
is now in file_preproc.cpp.
-       * dtd/ofc.dtd, lib/ofx_sgml.cpp, lib/ofx_preproc.cpp:  Add embryo of 
OFC (Microsoft Open Financial Connectivity) to LibOFX.  The SGML parses 
succesfully, but LibOFX does not yet know what to do with it.  Big thanks to 
Jeremy Jongsma jeremy at jongsma.org for finally finding the required DTD.  I 
haven't yet decided if its better to to add this support to ofx_proc_sgml.cpp 
(easier to maintain, less code duplication), or to create a ofc_proc_sgml.cpp 
(easier to understand, cleaner code).
+       * dtd/ofc.dtd, lib/ofx_sgml.cpp, lib/ofx_preproc.cpp:  Add embryo of 
OFC (Microsoft Open Financial Connectivity) to LibOFX.  The SGML parses 
successfully, but LibOFX does not yet know what to do with it.  Big thanks to 
Jeremy Jongsma jeremy at jongsma.org for finally finding the required DTD.  I 
haven't yet decided if its better to to add this support to ofx_proc_sgml.cpp 
(easier to maintain, less code duplication), or to create a ofc_proc_sgml.cpp 
(easier to understand, cleaner code).
 
 3/2/2004  Benoit Gr??goire  <beno...@coeus.ca>
        * inc/libofx.h lib/ofx_preproc.cpp lib/tree.hh ofx2qif/ofx2qif.c 
ofxdump/ofxdump.cpp:  Make it compile.  I may have misunderstood what Ryan 
wanted to do with the prototypes in libofx.h.  If so, sorry.  Note:  I don't 
think that the void * passed as arguments are saved in the registry yet.
@@ -308,7 +308,7 @@
 
 14/1/2004 Benoit Gr??goire  <beno...@coeus.ca>
        * dtd/Makefile.am, dtd/opensp.dcl, * lib/ofx_preproc.[cpp,hh],:  Add 
SGML declaration to be parsed before the DTD.  Makes us immune to changes to 
default settings.  Should get rid of "end tag for "MEMO" omitted, but OMITTAG 
NO was specified" type of messages and greatly help the parser.
-       * lib/ofx_sgml.cpp:  Get rid of OpenSP 1.3.1 compatibility code, which 
makes the code much easier to understand and debug.  Combined with the change 
obove, it should practically eliminate the parsing ambiguity that made libofx 
so verbose and ocasionally miss data.  More defensive coding to warn of 
malformed files.  This probably means that compatibility with OpenSP 1.3.1 
cannot come back.  However with the change above it may work after all.  
Somebody please test this...
+       * lib/ofx_sgml.cpp:  Get rid of OpenSP 1.3.1 compatibility code, which 
makes the code much easier to understand and debug.  Combined with the change 
obove, it should practically eliminate the parsing ambiguity that made libofx 
so verbose and occasionally miss data.  More defensive coding to warn of 
malformed files.  This probably means that compatibility with OpenSP 1.3.1 
cannot come back.  However with the change above it may work after all.  
Somebody please test this...
        * lib/messages.cpp:  Finally implement displaying line numbers in the 
error output.  This can be turned off by the clients by setting the 
ofx_show_position global.  These should all get setter functions in the API 
re-write.
 
 6/12/2003 Benoit Gr??goire  <beno...@coeus.ca>
@@ -347,7 +347,7 @@
        * INSTALL: Delete and replace by FAQ, update content.
        
 11/3/2003  Benoit Gr??goire  <beno...@coeus.ca>
-       * ofxdump/ofxdump.cpp: Remove comand line arguments debug output.
+       * ofxdump/ofxdump.cpp: Remove command line arguments debug output.
        * lib/ofx_container_main.cpp: Fix compiler warnings reported by Derek 
Atkins
        * Misc build system cleanup
 
@@ -365,7 +365,7 @@
        * lib/ofx_utilities.cpp: Fix ofxdate_to_time_t() that wouldn't compile 
on sun.
 
 23/1/2003  Benoit Gr??goire  <beno...@coeus.ca>
-       * lib/ofx_container_transaction.cpp: Explicitely ignore <MKTVAL> since 
it should always be equal to UNITS*UNITPRICE, and using it may lead to rounding 
errors.
+       * lib/ofx_container_transaction.cpp: Explicitly ignore <MKTVAL> since 
it should always be equal to UNITS*UNITPRICE, and using it may lead to rounding 
errors.
 
 22/1/2003  Benoit Gr??goire  <beno...@coeus.ca>
        * autogen.sh: Run libtoolize, and reorder the commands.  The order is 
now: libtoolize,aclocal, autoheader, automake, autoconf and configure
@@ -423,7 +423,7 @@
        * inc/libofx.h lib/ofx_container_transaction.cpp ofxdump/ofxdump.cpp: 
Created a new invtransactiontype enum to replace the invtranstype string
 
 30/10/2002  Benoit Gr??goire  <beno...@coeus.ca>
-       * lib/ofx_sgml.cpp: Added yet more spagetti code and global variables 
to improve the work around for OpenSP 1.3 bugs.  I beg of you, please convince 
your distro to make openjade and the OpenSP library independently upgradable.
+       * lib/ofx_sgml.cpp: Added yet more spaghetti code and global variables 
to improve the work around for OpenSP 1.3 bugs.  I beg of you, please convince 
your distro to make openjade and the OpenSP library independently upgradable.
 
 30/10/2002  Benoit Gr??goire  <beno...@coeus.ca>
        * configure.in: 
@@ -456,10 +456,10 @@
 LibOFX 0.?????????:
        -Add an account_name to the OfxAccountData struct.  It contains a human 
readable identifier of the account.
        -Include file location seems to have changed in recent versions of 
OpenSP.  Included old and new case.
-       -Profiling now possible.  It is now posible to use "make static".  
Statically linked ofxdump and ofx2qif will be created, with profiling enabled.
+       -Profiling now possible.  It is now possible to use "make static".  
Statically linked ofxdump and ofx2qif will be created, with profiling enabled.
 LibOFX 0.3:
        -MUCH improved documentation.  Full API and internals reference in 
doc/html/
-       -Major update to ofx2qif.  It will now generate the !Account QIF 
construct, which should improbe compatibility with other accounting software. 
+       -Major update to ofx2qif.  It will now generate the !Account QIF 
construct, which should improve compatibility with other accounting software. 
        -gcc3.2 caused problems with ld, now use gcc to link.  Should solve the 
"undefined symbol:__dso_handle" runtime problem with Mandrake cooker.
        -There is now a workaround in the code to make it work with the OpenSP 
version (1.3.4) distributed with OpenJADE.  However, this is not guaranteed to 
work, and it might cause errors in your financial data, and might not be 
present in future versions.  Use at your own risk, you've been warned.
        -LibOFX can now be installed in "unorthodox" directories, such as 
~/experimental, and still find it's dtd.  You must modify the prefix in 
common.m (recommended) or put it in the command line of BOTH make and make 
install. 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libofx-0.10.1/FAQ new/libofx-0.10.3/FAQ
--- old/libofx-0.10.1/FAQ       2021-01-25 22:10:19.000000000 +0100
+++ new/libofx-0.10.3/FAQ       2021-09-29 22:12:28.000000000 +0200
@@ -27,12 +27,12 @@
 
 (1) Getting "configure: error: unable to link a test program, is OpenSP 
installed?"
 
--BE CAREFULL:  When you compile OpenSP, by default it will install in 
/usr/local.  On many versions of linux (Most RedHat, All Mandrake up to 8.3) 
/usr/local/lib/ is not part of /etc/ld.so.conf .  In this case LibOFX will 
either
+-BE CAREFUL:  When you compile OpenSP, by default it will install in 
/usr/local.  On many versions of linux (Most RedHat, All Mandrake up to 8.3) 
/usr/local/lib/ is not part of /etc/ld.so.conf .  In this case LibOFX will 
either
 1-Fail to link at all
-2-Link with libosp.so.0 (1.3.4, wich probably got installed as part of 
OpenJade) and not work.
+2-Link with libosp.so.0 (1.3.4, which probably got installed as part of 
OpenJade) and not work.
 Even if you add /usr/local/lib/ to /etc/ld.so.conf, LibOFX will probably still 
link with OpenSP 1.3.4 at runtime.  Symptoms will be complaints of many 
unclosed statements when running ofxdump on an ofx file.
 
-I STRONGLY URGE YOU to avoid theese problems and compile OpenSP using
+I STRONGLY URGE YOU to avoid these problems and compile OpenSP using
  ./configure --prefix=/usr
 If you really want to install OpenSP in /usr/local/lib, you must add 
--with-opensp-libs=/usr/local/lib to libofx's ./configure or ./autogen.sh
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libofx-0.10.1/Makefile.am 
new/libofx-0.10.3/Makefile.am
--- old/libofx-0.10.1/Makefile.am       2021-01-25 22:10:19.000000000 +0100
+++ new/libofx-0.10.3/Makefile.am       2021-09-29 22:12:28.000000000 +0200
@@ -6,8 +6,6 @@
 DIST_SUBDIRS = m4 inc dtd lib doc . ofx2qif ofxdump ofxconnect
 SUBDIRS = m4 inc dtd lib doc . ofx2qif ofxdump $(MAYBE_OFXCONNECT)
 
-docdir = $(datadir)/doc/libofx
-
 doc_DATA = \
   AUTHORS \
   COPYING \
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libofx-0.10.1/NEWS new/libofx-0.10.3/NEWS
--- old/libofx-0.10.1/NEWS      2021-01-25 22:10:19.000000000 +0100
+++ new/libofx-0.10.3/NEWS      2021-09-29 22:12:28.000000000 +0200
@@ -1,3 +1,15 @@
+2021-09-29, LibOFX 0.10.3:
+
+        - #45: fix gmt offset seconds
+        - #44: fix various typos in source code
+        - fix win32 build failure
+
+2021-04-23, LibOFX 0.10.2:
+
+        - #41: Improved imported date stability, see gnucash bug
+        797848 and gnucash bug 636340.
+        - #40: Respect --libdir for opensp. Don't override docdir.
+
 2021-01-25, LibOFX 0.10.1:
 
         - Issue #37 fixed: Correct casting of iconv input argument
@@ -101,7 +113,7 @@
 
 2013-04-17, LibOFX 0.9.8:
 
-        - Fix errorneous reading of files with empty lines
+        - Fix erroneous reading of files with empty lines
 
         - bug#24: Fix build error on solaris.
 
@@ -109,7 +121,7 @@
 
 2013-04-11, LibOFX 0.9.7:
 
-        - Fix errorneous reading of files with long lines
+        - Fix erroneous reading of files with long lines
 
 2013-03-30, LibOFX 0.9.6:
 
@@ -119,7 +131,7 @@
         - Patch by Geert Janssens to fix typo in info message
 
         - Patch by Geert Janssens to allow lines longer than 1024
-        caracters
+        characters
 
         - Fix treatment of empty date strings: Must return a zero date
         instead of a bogus one.
@@ -141,7 +153,7 @@
                - Workaround OFX files specifying invalid encoding values
                   (specifically:  UNICODE and CP1252).  This should fix most 
encoding
                   problems reported.
-               - Look for DTD in source directory (simplifies developpement)
+               - Look for DTD in source directory (simplifies development)
        Christian Stimming <christ...@cstimming.de>
                - Add minor argument checking
                - Expose field: OfxSecurityData::fiid in API
@@ -169,7 +181,7 @@
 LibOFX 0.9.2:
        - Win32: Add gnucash patch that looks up the dtd installation directory 
from the current executable's location.
        - Apply patch by Geert Janssens to fix a crash on invalid date format
-       - Apply patch by ajseward with some additional fixes to allow wraping 
the library in python.
+       - Apply patch by ajseward with some additional fixes to allow wrapping 
the library in python.
        - Apply patch by Thomas Baumgart which fixes bug #5 (Transaction 
posting date off by one)
        - Apply patch by Bill Nottingham <nott...@redhat.com>  with various C++ 
include fixes for building with recent compilers.
 
@@ -221,7 +233,7 @@
 
 LibOFX 0.6.6:
        -Important code cleanup in the parsing code. The parser should be much 
more independent of OpenSP default settings.  Should get rid of "end tag for 
"MEMO" omitted, but OMITTAG NO was specified" type messages and many other 
parser failures.
-       -The very old OpenSP 1.3.1 will probably no longuer work.
+       -The very old OpenSP 1.3.1 will probably no longer work.
        -Fix an infinite loop in some circumstances while the library was 
searching for a parent statement for a transaction.  Would mostly manifest on 
complex investments transactions.  Thanks to stephen.a.prior A T ntlworld.ie 
for the catch.
        -Implement displaying file line numbers in the error output.  Note that 
data won't be valid if the message occurs before the file is opened.
 
@@ -253,17 +265,17 @@
        -Full investment transaction support (ofx2qif not yet updated however).
        -Now uses an Autoconf/Automake build system.
        -Proprietary tag striper is now much smarter and read routines have 
been corrected.  Importing a file written on a single line will no longer cause 
an infinite loop.
-       -Added yet more spagetti code and global variables to improve the work 
around for OpenSP 1.3 bugs.  I beg of you, please convince your distro to make 
openjade and the OpenSP library independently upgradable.
+       -Added yet more spaghetti code and global variables to improve the work 
around for OpenSP 1.3 bugs.  I beg of you, please convince your distro to make 
openjade and the OpenSP library independently upgradable.
 
 LibOFX 0.5:
        -Alpha version, released to accompany the new GnuCash 1.7.1 alpha 
release.
        -Add an account_name to the OfxAccountData struct.  It contains a human 
readable identifier of the account.
        -Include file location seems to have changed in recent versions of 
OpenSP.  Included old and new case.
-       -Profiling now possible.  It is now posible to use "make static".  
Statically linked ofxdump and ofx2qif will be created, with profiling enabled.
+       -Profiling now possible.  It is now possible to use "make static".  
Statically linked ofxdump and ofx2qif will be created, with profiling enabled.
        -Basic work for investment account and securities.
 LibOFX 0.3:
        -MUCH improved documentation.  Full API and internals reference in 
doc/html/
-       -Major update to ofx2qif.  It will now generate the !Account QIF 
construct, which should improbe compatibility with other accounting software.
+       -Major update to ofx2qif.  It will now generate the !Account QIF 
construct, which should improve compatibility with other accounting software.
        -gcc3.2 caused problems with ld, now use gcc to link.  Should solve the 
"undefined symbol:__dso_handle" runtime problem with Mandrake cooker.
        -There is now a workaround in the code to make it work with the OpenSP 
version (1.3.4) distributed with OpenJADE.  However, this is not guaranteed to 
work, and it might cause errors in your financial data, and might not be 
present in future versions.  Use at your own risk, you've been warned.
        -LibOFX can now be installed in "unorthodox" directories, such as 
~/experimental, and still find it's dtd.  You must modify the prefix in 
common.m (recommended) or put it in the command line of BOTH make and make 
install.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libofx-0.10.1/README new/libofx-0.10.3/README
--- old/libofx-0.10.1/README    2021-01-25 22:10:19.000000000 +0100
+++ new/libofx-0.10.3/README    2021-09-29 22:12:28.000000000 +0200
@@ -11,7 +11,7 @@
 usage: `ofxdump` _path_to_ofx_file_`/`_ofx_filename_
 
 **ofx2qif**:\
-ofx2qif is a OFX "file" to QIF (Quicken Interchange Format) converter.  It was 
written as a C code example, and as a way for LibOFX to immediately provide 
something usefull, as an incentive for people to try out the library.  It is 
not recommended that financial software use the output of this utility for OFX 
support.  The QIF file format is very primitive, and much information is lost.  
The utility curently supports every transaction tags of the qif format except 
the address lines, and supports many of the tags of `!Account`. It should 
generate QIF files that will import sucessfully in just about every software 
with QIF support.
+ofx2qif is a OFX "file" to QIF (Quicken Interchange Format) converter.  It was 
written as a C code example, and as a way for LibOFX to immediately provide 
something useful, as an incentive for people to try out the library.  It is not 
recommended that financial software use the output of this utility for OFX 
support.  The QIF file format is very primitive, and much information is lost.  
The utility currently supports every transaction tags of the qif format except 
the address lines, and supports many of the tags of `!Account`. It should 
generate QIF files that will import successfully in just about every software 
with QIF support.
 I do not plan on working on this utility much further, but I would be more 
than happy to accept contributions.\
 usage: `ofx2qif` _path_to_ofx_file_`/`_ofx_filename_ `>` 
_output_filename_`.qif`
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libofx-0.10.1/configure.ac 
new/libofx-0.10.3/configure.ac
--- old/libofx-0.10.1/configure.ac      2021-01-25 22:10:19.000000000 +0100
+++ new/libofx-0.10.3/configure.ac      2021-09-29 22:12:28.000000000 +0200
@@ -17,7 +17,7 @@
 
 LIBOFX_MAJOR_VERSION=0
 LIBOFX_MINOR_VERSION=10
-LIBOFX_MICRO_VERSION=1
+LIBOFX_MICRO_VERSION=3
 # this number is just incremented for every major change in CVS, also across
 # releases to emulate the Revision variable of SVN (which isn't available
 # with CVS)
@@ -112,7 +112,7 @@
 [  --with-opensp-libs=PATH         specify where to look for libosp
                                   - default is /usr/lib],
                        OPENSPLIBPATH="$with_opensp_libs",
-                       OPENSPLIBPATH="/usr/lib")
+                       OPENSPLIBPATH="${libdir}")
 
                        echo $OPENSPLIBPATH
 for d in /usr/include/OpenSP /usr/local/include/OpenSP /usr/include/sp/generic 
/usr/local/include/sp/generic; do
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libofx-0.10.1/doc/Makefile.am 
new/libofx-0.10.3/doc/Makefile.am
--- old/libofx-0.10.1/doc/Makefile.am   2021-01-25 22:10:19.000000000 +0100
+++ new/libofx-0.10.3/doc/Makefile.am   2021-09-29 22:12:28.000000000 +0200
@@ -1,7 +1,5 @@
 SUBDIRS =
 
-docdir = ${prefix}/share/doc/libofx
-
 EXTRA_DIST = \
        doxygen.cfg \
        ofx_sample_files \
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libofx-0.10.1/doc/main_doc.c 
new/libofx-0.10.3/doc/main_doc.c
--- old/libofx-0.10.1/doc/main_doc.c    2021-01-25 22:10:19.000000000 +0100
+++ new/libofx-0.10.3/doc/main_doc.c    2021-09-29 22:12:28.000000000 +0200
@@ -5,7 +5,7 @@
 This is the documentation for the LibOFX library and it's utilities. It should 
always be up to date since it is generated directly from the source files using 
Doxygen. This documentation covers the internals as well as the API of libofx.  
Before you dive into this documentation, you should have read the README and 
the other files included at the top level of the distribution.
 
 \section quicklinks Quick links
-These are the most important sections of the doc.  The rest covers the library 
internals and is a work in progress.  The documentation for the different 
functions is mostly complete, but documention for the objects is not.
+These are the most important sections of the doc.  The rest covers the library 
internals and is a work in progress.  The documentation for the different 
functions is mostly complete, but documentation for the objects is not.
 
 \subsection api API documentation
 If you are only interested in the API.  It's covered entirely in the libofx.h 
section.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libofx-0.10.1/dtd/ofc.dtd 
new/libofx-0.10.3/dtd/ofc.dtd
--- old/libofx-0.10.1/dtd/ofc.dtd       2021-01-25 22:10:19.000000000 +0100
+++ new/libofx-0.10.3/dtd/ofc.dtd       2021-09-29 22:12:28.000000000 +0200
@@ -27,7 +27,7 @@
        model. These entity tags will never occur 
        in the OFC document instance itself.
 
-       The formating rules are described in the 
+       The formatting rules are described in the 
        OFC Build & Parse Specification, which
        can be obtained from Microsoft.   
 -->
@@ -45,7 +45,7 @@
 <!ENTITY % NUMSTR      "(#PCDATA)">
 
 <!--  ID: Used for specifying a unique id.
-       Must be composed of alpha-numeric
+       Must be composed of alphanumeric
        characters. It may contain the 
        following delimiters: ()-,.;:/\#
        as well as spaces.
@@ -110,7 +110,7 @@
        If the user is new to the system, the response must 
        contain values for OFC services available on this server, 
        as well as the default days to pay and the default days 
-       before withdrawl on new payees, when using the 
+       before withdrawal on new payees, when using the 
        U.S. payment service model. The server returns 
        the SESSKEY to be used during the next OFC HTTP session.
 -->
@@ -143,7 +143,7 @@
 <!ELEMENT TRNRS                - o     (CLTID, STATUS, ERROR?,
        (STMTRS | INTRARS | INTERRS | PAYMTRS | PAYIQRS)?)>
 
-<!--  Account Statement: This is used for statment
+<!--  Account Statement: This is used for statement
        downloads and file exchange. 
 -->
 <!ELEMENT ACCTSTMT     - o     (ACCTFROM, STMTRS)>
@@ -153,7 +153,7 @@
 <!--  ***************************************************************  -->
 
 <!--  Account Transaction: Sent to enable or change services
-       for a paticular account belonging to a user.
+       for a particular account belonging to a user.
 -->
 <!ELEMENT ACCTRQ       - o     (ACCTFROM, (SERVRQST+))>
 <!ELEMENT ACCTRS       - o     (SERVAUTH+)>
@@ -166,7 +166,7 @@
 <!ELEMENT PAYEERS      - o     (PAYEEID, PAYEE?, DAYSREQD, DAYSWITH)>
 
 <!--  Mail Transaction: Sent to inquire about 
-       services for a paticular account belonging to
+       services for a particular account belonging to
        a user.  
 -->
 <!ELEMENT MAILRQ       - o     (SERVICE, ACCTFROM?, (MEMO+))>
@@ -191,7 +191,7 @@
        an intra-bank transfer. If the server returns
        a status indicating success, and no date/time
        is specified, it will be assumed the funds are 
-       immeadiately available. The user's account
+       immediately available. The user's account
        must have been previously enabled for banking 
        services using the ACCTRQ/ACCTRS transactions. 
 -->
@@ -204,7 +204,7 @@
        an inter-bank transfer. If the server returns
        a status indicating success, and no date/time
        is specified, it will be assumed the funds are 
-       immeadiately available. The user's account
+       immediately available. The user's account
        must have been previously enabled for bill payment 
        services using the ACCTRQ/ACCTRS transactions. 
        The NAME and PAYACCT fields are for the "payee" 
@@ -341,7 +341,7 @@
        should verify that this is a crash recovery by
        comparing the session key against the key of the
        previous session. If the keys match, then it can be 
-       assumed that the client did not recieve the 
+       assumed that the client did not receive the 
        transaction response of the previous session, 
        and return the response transactions of the previous
        session. This key is always assigned by the
@@ -395,7 +395,7 @@
        1, request rejected 
        2, account pending
        3, account closed
-       4, no CLTID (unsolicitied transaction)
+       4, no CLTID (unsolicited transaction)
        5, password change required
        
        error status
@@ -463,7 +463,7 @@
        3, Money Market
        4, Credit Line
        5, Loan
-       6, Inter-bank tranfer payee
+       6, Inter-bank transfer payee
        7, Other
 -->
 <!ELEMENT ACCTTYPE     - o     %NUMSTR>
@@ -477,11 +477,11 @@
        3, Dividend
        4, Service Charge
        5, Deposit
-       6, ATM Withdrawl
+       6, ATM Withdrawal
        7, Transfer
        8, Check
        9, Electronic Payment
-       10, Cash Withdrawl
+       10, Cash Withdrawal
        11, Electronic Payroll Deposit
        12, Other
 -->
@@ -509,7 +509,7 @@
 -->
 <!ELEMENT DAYSREQD     - o     %NUMSTR>
 
-<!--  Withdrawl date: Used for specifying the number of 
+<!--  Withdrawal date: Used for specifying the number of 
        days before funds will be withdarwn from a user's 
        account prior to the due date of the payment.
 -->
@@ -550,13 +550,13 @@
 
 <!--  Service: Used for specifying a service.
        These services are either banking services,
-       or billpayment services.  
+       or billpayment services.
 
        0, Banking Services
        1, Billpay Services (Service Model)
-       2. Payee Id/Acct Info (Interbank Tranfer Model)  
-       3. Payee Id Only (Interbank Tranfer Model)  
-       4. Acct Info Only (Interbank Tranfer Model)  
+       2. Payee Id/Acct Info (Interbank Transfer Model)
+       3. Payee Id Only (Interbank Transfer Model)
+       4. Acct Info Only (Interbank Transfer Model)
 -->
 <!ELEMENT SERVICE      - o     %NUMSTR>
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libofx-0.10.1/dtd/ofx160.dtd 
new/libofx-0.10.3/dtd/ofx160.dtd
--- old/libofx-0.10.1/dtd/ofx160.dtd    2021-01-25 22:10:19.000000000 +0100
+++ new/libofx-0.10.3/dtd/ofx160.dtd    2021-09-29 22:12:28.000000000 +0200
@@ -265,7 +265,7 @@
 <!ENTITY % EXTDPMTFORENUM "(#PCDATA)">
 <!--#ENTITY % EXTDPMTFORENUM           #Enum("INDIVIDUAL","BUSINESS")-->
 <!ENTITY % COUPONFREQENUM "(#PCDATA)">
-<!--#ENTITY % COUPONFREQENUM           
#Enum("MONTHLY","QUARTERLY","SEMIANNUALLY","ANUALLY","OTHER")-->
+<!--#ENTITY % COUPONFREQENUM           
#Enum("MONTHLY","QUARTERLY","SEMIANNUALLY","ANNUALLY","OTHER")-->
 <!ENTITY % CHARTYPEENUM "(#PCDATA)">
 <!--#ENTITY % CHARTYPEENUM             
#Enum("ALPHAONLY","NUMERICONLY","ALPHAORNUMERIC","ALPHAANDNUMERIC")-->
 <!ENTITY % BALANCEENUM "(#PCDATA)">
@@ -276,7 +276,7 @@
 <!--#ENTITY % ACCOUNTENUM2             
#Enum("CHECKING","SAVINGS","MONEYMRKT","CREDITLINE","CMA")-->
 <!ENTITY % FREQENUM "(#PCDATA)">
 <!--#ENTITY % FREQENUM                 
#Enum("WEEKLY","BIWEEKLY","TWICEMONTHLY","MONTHLY","FOURWEEKS","BIMONTHLY",
-                                                       
"QUARTERLY","SEMIANNUALLY","TRIANNUALLY","ANUALLY")-->
+                                                       
"QUARTERLY","SEMIANNUALLY","TRIANNUALLY","ANNUALLY")-->
 <!ENTITY % DAYSENUM "(#PCDATA)">
 <!--#ENTITY % DAYSENUM                 
#Enum("MONDAY","TUESDAY","WEDNESDAY","THURSDAY","FRIDAY",
                                                        "SATURDAY","SUNDAY")-->
@@ -859,7 +859,7 @@
 <!--#ELEMENT STPCHKSYNCRQ #Link(TOKEN2,BANKMSGSRQV2)-->
 
 
-<!-- intrabank transfer sychronization request, v2 adds ccacctfrom -->
+<!-- intrabank transfer synchronization request, v2 adds ccacctfrom -->
 <!-- OFX 1.5 -->
 <!-- FROM BANKACCTFROM to (BANKACCTFROM | CCACCTFROM) -->
 <!ELEMENT INTRASYNCRQ - - (%SYNCRQMACRO , (BANKACCTFROM | CCACCTFROM), 
INTRATRNRQ*)>
@@ -1398,7 +1398,7 @@
 <!ELEMENT DFLTDAYSTOPAY - o %DAYSPANTYPE>                <!--  the default 
number of days to pay -->
 <!ELEMENT XFERDAYSWITH          - o     %DAYSPANTYPE>       <!--  number of 
days before the processing date that funds are withdrawn for xfers-->
 <!ELEMENT XFERDFLTDAYSTOPAY     - o %DAYSPANTYPE>   <!--  the default number 
of days to pay for transfers-->
-<!ELEMENT POSTPROCWND   - o     %DAYSPANTYPE>       <!--  the number of days 
after a transaction is processed that it is acessible
+<!ELEMENT POSTPROCWND   - o     %DAYSPANTYPE>       <!--  the number of days 
after a transaction is processed that it is accessible
                                                                                
           for status inquiries -->
 <!ELEMENT STSVIAMODS    - o     %BOOLTYPE>      <!--  server supports 
communication of server-initiated payment status changes
                                                                                
           via the PMTMODRS -->
@@ -2288,7 +2288,7 @@
 <!ELEMENT INVSTMTRS  - - (DTASOF , CURDEF , INVACCTFROM , INVTRANLIST? ,
                INVPOSLIST? , INVBAL? , INVOOLIST? ,  MKTGINFO?) >
 
-<!-- Marketing Mesage -->
+<!-- Marketing Message -->
 <!ELEMENT MKTVAL  - O %AMTTYPE >
 
 <!-- ** Transaction List ** -->
@@ -2493,7 +2493,7 @@
 
 <!ELEMENT DENOMINATOR  - O %AMTTYPE >
 
-<!-- Amount of cash recieved from fractional shares -->
+<!-- Amount of cash received from fractional shares -->
 <!ELEMENT FRACCASH  - O %AMTTYPE >
 
 <!-- ** Transfer Transaction ** -->
@@ -3045,7 +3045,7 @@
                     )">
 
 <!-- OFX 1.6 correction: Disallow an empty <MSGSETLIST> by requiring one or
-     more occurances of the %MSGSETMACRO contents.
+     more occurrences of the %MSGSETMACRO contents.
      Also, make <SIGNONMSGSET> and <PROFMSGSET> required. -->
 <!ELEMENT MSGSETLIST    - - (
     ((( SIGNONMSGSET, (%MSGSETMACRO)+, PROFMSGSET ) |
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libofx-0.10.1/dtd/ofx201.dtd 
new/libofx-0.10.3/dtd/ofx201.dtd
--- old/libofx-0.10.1/dtd/ofx201.dtd    2021-01-25 22:10:19.000000000 +0100
+++ new/libofx-0.10.3/dtd/ofx201.dtd    2021-09-29 22:12:28.000000000 +0200
@@ -581,7 +581,7 @@
 
 <!ENTITY % COUPONFREQENUM "(#PCDATA)">
 
-<!--#ENTITY % COUPONFREQENUM           
#Enum("MONTHLY","QUARTERLY","SEMIANNUALLY","ANUALLY","OTHER")-->
+<!--#ENTITY % COUPONFREQENUM           
#Enum("MONTHLY","QUARTERLY","SEMIANNUALLY","ANNUALLY","OTHER")-->
 
 <!ENTITY % CHARTYPEENUM "(#PCDATA)">
 
@@ -605,7 +605,7 @@
 
 <!--#ENTITY % FREQENUM                 
#Enum("WEEKLY","BIWEEKLY","TWICEMONTHLY","MONTHLY","FOURWEEKS","BIMONTHLY",
 
-                                                       
"QUARTERLY","SEMIANNUALLY","TRIANNUALLY","ANUALLY")-->
+                                                       
"QUARTERLY","SEMIANNUALLY","TRIANNUALLY","ANNUALLY")-->
 
 <!ENTITY % DAYSENUM "(#PCDATA)">
 
@@ -1771,7 +1771,7 @@
 <!-- The default njumber of days to pay for transfers -->
 <!ELEMENT XFERDFLTDAYSTOPAY          %DAYSPANTYPE;>
 
-<!--  The number of days after a transaction is processed that it is acessible 
for status inquiries -->
+<!--  The number of days after a transaction is processed that it is 
accessible for status inquiries -->
 <!ELEMENT POSTPROCWND                %DAYSPANTYPE;>       
 
 <!--  server supports communication of server-initiated payment status changes 
via the PMTMODRS -->
@@ -2810,7 +2810,7 @@
 
 <!ELEMENT DENOMINATOR   %AMTTYPE; >
 
-<!-- Amount of cash recieved from fractional shares -->
+<!-- Amount of cash received from fractional shares -->
 
 <!ELEMENT FRACCASH   %AMTTYPE; >
 
@@ -4545,7 +4545,7 @@
 
 <!ELEMENT INTINCOME          %AMTTYPE;>
 
-<!-- Early withdrawl penalty, amount                                          
-->      
+<!-- Early withdrawal penalty, amount                                          
-->     
 
 <!ELEMENT ERLWITHPEN          %AMTTYPE;>
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libofx-0.10.1/inc/libofx.h.in 
new/libofx-0.10.3/inc/libofx.h.in
--- old/libofx-0.10.1/inc/libofx.h.in   2021-01-25 22:10:19.000000000 +0100
+++ new/libofx-0.10.3/inc/libofx.h.in   2021-09-29 22:12:28.000000000 +0200
@@ -18,7 +18,7 @@
  *
  Important note:  The variables associated with every data element have a
  *_valid companion.  Always check that data_valid == true before using.
- Not only will you ensure that the data is meaningfull, but also that
+ Not only will you ensure that the data is meaningful, but also that
  pointers are valid and strings point to a null terminated string.
  Elements listed as mandatory are for information purpose only, do not
  trust the bank not to send you non-conforming data...
@@ -113,9 +113,9 @@
   LibofxContextPtr libofx_get_new_context();
 
   /**
-   * \brief Free all ressources used by this context.
+   * \brief Free all resources used by this context.
    *
-   @return 0 if successfull.
+   @return 0 if successful.
   */
   int libofx_free_context( LibofxContextPtr );
 
@@ -203,7 +203,7 @@
    * \brief An abstraction of an OFX STATUS element.
    *
    * The OfxStatusData structure represents a STATUS OFX element sent by the
-   OFX server.  Be carefull, you do not have much context except the entity
+   OFX server.  Be careful, you do not have much context except the entity
    name so your application should probably ignore this status if code==0.
    However, you should display a message if the status in non-zero,
    since an error probably occurred on the server side.
@@ -252,7 +252,7 @@
 
 
   /**
-   * \brief The callback function for the OfxStatusData stucture.
+   * \brief The callback function for the OfxStatusData structure.
    *
    * An ofx_proc_status_cb event is sent everytime the server has
    * generated a OFX STATUS element.  As such, it could be received at
@@ -285,7 +285,7 @@
         <BANKID><BRANCHID><ACCTID> for a bank account, and
         <ACCTID><ACCTKEY> for a credit card account.  account_id is
         meant to be computer-readable.  It is a worldwide OFX unique
-        identifier wich can be used for account matching, even in
+        identifier which can be used for account matching, even in
         system with multiple users.*/
     char account_id[OFX_ACCOUNT_ID_LENGTH];
 
@@ -293,7 +293,7 @@
         identify the account.  Currently it is <ACCTID> for a bank
         account and a credit card account an <BROKERID>:<ACCTID> for
         investment accounts.  account_id_name is not meant to be
-        computer-readable and is not garanteed to be unique.*/
+        computer-readable and is not guaranteed to be unique.*/
     char account_name[OFX_ACCOUNT_NAME_LENGTH];
     int account_id_valid;/* Use for both account_id and account_name */
 
@@ -333,7 +333,7 @@
   };
 
   /**
-   * \brief The callback function for the OfxAccountData stucture.
+   * \brief The callback function for the OfxAccountData structure.
    *
    * The ofx_proc_account_cb event is always generated first, to allow
    * the application to create accounts or ask the user to match an
@@ -351,7 +351,7 @@
   /**
    * \brief An abstraction of a security, such as a stock, mutual fund, etc.
    *
-   * The OfxSecurityData stucture is used to hold the security
+   * The OfxSecurityData structure is used to hold the security
    * information inside a OfxTransactionData struct for investment
    * transactions.
   */
@@ -605,7 +605,7 @@
   };/* end struct OfxSecurityData */
 
   /**
-   * \brief The callback function for the OfxSecurityData stucture.
+   * \brief The callback function for the OfxSecurityData structure.
    *
    * An ofx_proc_security_cb event is generated for any securities
    * listed in the ofx file.  It is generated after ofx_proc_statement
@@ -676,7 +676,7 @@
   /**
    * \brief An abstraction of a transaction in an account.
    *
-   * The OfxTransactionData stucture contains all available
+   * The OfxTransactionData structure contains all available
    * information about an actual transaction in an account.
   */
   struct OfxTransactionData
@@ -782,7 +782,7 @@
 
     /** The check number is most likely an integer and can probably be
         converted properly with atoi().  However the spec allows for up to
-        12 digits, so it is not garanteed to work */
+        12 digits, so it is not guaranteed to work */
     char check_number[OFX_CHECK_NUMBER_LENGTH];
     int check_number_valid;
 
@@ -1035,7 +1035,7 @@
   };
 
   /**
-   * \brief The callback function for the OfxTransactionData stucture.
+   * \brief The callback function for the OfxTransactionData structure.
    *
    * An ofx_proc_transaction_cb event is generated for every
    * transaction in the ofx response, after ofx_proc_statement (and
@@ -1076,7 +1076,7 @@
     int account_id_valid;
 
     /** The actual balance, according to the FI.  The user should be warned
-        of any discrepency between this and the balance in the application */
+        of any discrepancy between this and the balance in the application */
     double ledger_balance;
     int ledger_balance_valid;
 
@@ -1100,15 +1100,15 @@
     time_t available_balance_date;/**< Time of the available_balance snapshot 
*/
     int available_balance_date_valid;
 
-    /** Investment acccount margin balance */
+    /** Investment account margin balance */
     double margin_balance;
     int margin_balance_valid;
 
-    /** Investment acccount short balance */
+    /** Investment account short balance */
     double short_balance;
     int short_balance_valid;
 
-    /** Investment acccount buying power */
+    /** Investment account buying power */
     double buying_power;
     int buying_power_valid;
 
@@ -1133,7 +1133,7 @@
   };
 
   /**
-   * \brief The callback function for the OfxStatementData stucture.
+   * \brief The callback function for the OfxStatementData structure.
    *
    * The ofx_proc_statement_cb event is sent after all ofx_proc_transaction
    events have been sent. An OfxStatementData is passed to this event, as well 
as
@@ -1154,7 +1154,7 @@
   /**
    * \brief An abstraction of a security position held in an account.
    *
-   * The OfxPositionData stucture is used to hold the position
+   * The OfxPositionData structure is used to hold the position
    * information inside a OfxPositionContainer class for investment
    * positions.
   */
@@ -1261,7 +1261,7 @@
   };
 
   /**
-   * \brief The callback function for the OfxPositionData stucture.
+   * \brief The callback function for the OfxPositionData structure.
    *
    * The ofx_proc_statement_cb event is sent after all ofx_proc_transaction
    * events have been sent. An OfxStatementData is passed to this event, as 
well as
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libofx-0.10.1/lib/file_preproc.hh 
new/libofx-0.10.3/lib/file_preproc.hh
--- old/libofx-0.10.1/lib/file_preproc.hh       2021-01-25 22:10:19.000000000 
+0100
+++ new/libofx-0.10.3/lib/file_preproc.hh       2021-09-29 22:12:28.000000000 
+0200
@@ -24,7 +24,7 @@
  * \brief  libofx_detect_file_type tries to analyze a file to determine it's 
format.
  *
 @param p_filename File name of the file to process
- @return Detected file format, UNKNOWN if unsuccessfull.
+ @return Detected file format, UNKNOWN if unsuccessful.
 */
 enum LibofxFileFormat libofx_detect_file_type(const char * p_filename);
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libofx-0.10.1/lib/ofc_sgml.cpp 
new/libofx-0.10.3/lib/ofc_sgml.cpp
--- old/libofx-0.10.1/lib/ofc_sgml.cpp  2021-01-25 22:10:19.000000000 +0100
+++ new/libofx-0.10.3/lib/ofc_sgml.cpp  2021-09-29 22:12:28.000000000 +0200
@@ -5,7 +5,7 @@
     email                : beno...@coeus.ca
 ***************************************************************************/
 /**@file
-   \brief OFX/SGML parsing functionnality.
+   \brief OFX/SGML parsing functionality.
    *
    Almost all of the SGML parser specific code is contained in this file (some 
is in messages.cpp and ofx_utilities.cpp).  To understand this file you must 
read the documentation of OpenSP's generic interface: see 
http://openjade.sourceforge.net/
 */
@@ -195,7 +195,7 @@
     {
       /* The element was a data element.  OpenSP will call one or several 
data() callback with the data */
       message_out (PARSER, "Data element " + identifier + " found");
-      /* There is a bug in OpenSP 1.3.4, which won't send endElement Event for 
some elements, and will instead send an error like "document type does not 
allow element "MESSAGE" here".  Incoming_data should be empty in such a case, 
but it will not be if the endElement event was skiped. So we empty it, so at 
least the last element has a chance of having valid data */
+      /* There is a bug in OpenSP 1.3.4, which won't send endElement Event for 
some elements, and will instead send an error like "document type does not 
allow element "MESSAGE" here".  Incoming_data should be empty in such a case, 
but it will not be if the endElement event was skipped. So we empty it, so at 
least the last element has a chance of having valid data */
       if (incoming_data != "")
       {
         message_out (ERROR, "startElement: incoming_data should be empty! You 
are probably using OpenSP <= 1.3.4.  The following data was lost: " + 
incoming_data );
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libofx-0.10.1/lib/ofc_sgml.hh 
new/libofx-0.10.3/lib/ofc_sgml.hh
--- old/libofx-0.10.1/lib/ofc_sgml.hh   2021-01-25 22:10:19.000000000 +0100
+++ new/libofx-0.10.3/lib/ofc_sgml.hh   2021-09-29 22:12:28.000000000 +0200
@@ -6,7 +6,7 @@
     email                : beno...@coeus.ca
  ***************************************************************************/
 /** @file
- * \brief OFX/SGML parsing functionnality.
+ * \brief OFX/SGML parsing functionality.
 */
 /***************************************************************************
  *                                                                         *
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libofx-0.10.1/lib/ofx_containers.hh 
new/libofx-0.10.3/lib/ofx_containers.hh
--- old/libofx-0.10.1/lib/ofx_containers.hh     2021-01-25 22:10:19.000000000 
+0100
+++ new/libofx-0.10.3/lib/ofx_containers.hh     2021-09-29 22:12:28.000000000 
+0200
@@ -34,7 +34,7 @@
 {
 public:
   string type;/**< The type of the object, often == tag_identifier */
-  string tag_identifier; /**< The identifer of the creating tag */
+  string tag_identifier; /**< The identifier of the creating tag */
   OfxGenericContainer *parentcontainer;
   LibofxContext *libofx_context;
 
@@ -61,7 +61,7 @@
   /** \brief Add this container to the main tree.
    *
    add_to_main_treegen_event will add the container to the main trees stored 
int the OfxMainContainer.
-   \return true if successfull, false otherwise.
+   \return true if successful, false otherwise.
   */
   virtual int add_to_main_tree();
 
@@ -271,7 +271,7 @@
 
 /** \brief  Represents a bank or credid card transaction.
  *
- Built from the diferent investment transaction OFX entity
+ Built from the different investment transaction OFX entity
  */
 class OfxInvestmentTransactionContainer: public OfxTransactionContainer
 {
@@ -286,7 +286,7 @@
  ***************************************************************************/
 /** \brief The root container.  Created by the <OFX> OFX element or by the 
export functions.
  *
- The OfxMainContainer maintains trees of processed ofx data structures which 
can be used to generate events in the right order, and eventually export in OFX 
and QIF formats and even generate matching OFX querys.
+ The OfxMainContainer maintains trees of processed ofx data structures which 
can be used to generate events in the right order, and eventually export in OFX 
and QIF formats and even generate matching OFX queries.
 */
 class OfxMainContainer: public OfxGenericContainer
 {
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libofx-0.10.1/lib/ofx_error_msg.hh 
new/libofx-0.10.3/lib/ofx_error_msg.hh
--- old/libofx-0.10.1/lib/ofx_error_msg.hh      2021-01-25 22:10:19.000000000 
+0100
+++ new/libofx-0.10.3/lib/ofx_error_msg.hh      2021-09-29 22:12:28.000000000 
+0200
@@ -6,7 +6,7 @@
     email                : beno...@coeus.ca
  ***************************************************************************/
 /**@file
- *  \brief OFX error code management functionnality.
+ *  \brief OFX error code management functionality.
  */
 /***************************************************************************
  *                                                                         *
@@ -123,9 +123,9 @@
   { -1, "Unknown code", "The description of this code is unknown to libOfx"}
 };
 
-///Retreive error code descriptions
+///Retrieve error code descriptions
 /**
-   The find_error_msg function will take an ofx error number, and return an 
ErrorMsg structure with detailled information about the error, including the 
error name and long description
+   The find_error_msg function will take an ofx error number, and return an 
ErrorMsg structure with detailed information about the error, including the 
error name and long description
  */
 const ErrorMsg find_error_msg(int param_code)
 {
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libofx-0.10.1/lib/ofx_preproc.cpp 
new/libofx-0.10.3/lib/ofx_preproc.cpp
--- old/libofx-0.10.1/lib/ofx_preproc.cpp       2021-01-25 22:10:19.000000000 
+0100
+++ new/libofx-0.10.3/lib/ofx_preproc.cpp       2021-09-29 22:12:28.000000000 
+0200
@@ -581,7 +581,7 @@
     }
   }
 #endif
-  /* Search in environement variable OFX_DTD_PATH */
+  /* Search in environment variable OFX_DTD_PATH */
   env_dtd_path = getenv("OFX_DTD_PATH");
   if (env_dtd_path)
   {
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libofx-0.10.1/lib/ofx_sgml.cpp 
new/libofx-0.10.3/lib/ofx_sgml.cpp
--- old/libofx-0.10.1/lib/ofx_sgml.cpp  2021-01-25 22:10:19.000000000 +0100
+++ new/libofx-0.10.3/lib/ofx_sgml.cpp  2021-09-29 22:12:28.000000000 +0200
@@ -5,7 +5,7 @@
     email                : beno...@coeus.ca
 ***************************************************************************/
 /**@file
-   \brief OFX/SGML parsing functionnality.
+   \brief OFX/SGML parsing functionality.
    *
    Almost all of the SGML parser specific code is contained in this file (some 
is in messages.cpp and ofx_utilities.cpp).  To understand this file you must 
read the documentation of OpenSP's generic interface: see 
http://openjade.sourceforge.net/
 */
@@ -251,7 +251,7 @@
       {
         /* The element was a data element.  OpenSP will call one or several 
data() callback with the data */
         message_out (PARSER, "Data element " + identifier + " found");
-        /* There is a bug in OpenSP 1.3.4, which won't send endElement Event 
for some elements, and will instead send an error like "document type does not 
allow element "MESSAGE" here".  Incoming_data should be empty in such a case, 
but it will not be if the endElement event was skiped. So we empty it, so at 
least the last element has a chance of having valid data */
+        /* There is a bug in OpenSP 1.3.4, which won't send endElement Event 
for some elements, and will instead send an error like "document type does not 
allow element "MESSAGE" here".  Incoming_data should be empty in such a case, 
but it will not be if the endElement event was skipped. So we empty it, so at 
least the last element has a chance of having valid data */
         if (incoming_data != "")
         {
           message_out (ERROR, "startElement: incoming_data should be empty! 
You are probably using OpenSP <= 1.3.4.  The following data was lost: " + 
incoming_data );
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libofx-0.10.1/lib/ofx_sgml.hh 
new/libofx-0.10.3/lib/ofx_sgml.hh
--- old/libofx-0.10.1/lib/ofx_sgml.hh   2021-01-25 22:10:19.000000000 +0100
+++ new/libofx-0.10.3/lib/ofx_sgml.hh   2021-09-29 22:12:28.000000000 +0200
@@ -6,7 +6,7 @@
     email                : beno...@coeus.ca
  ***************************************************************************/
 /** @file
- * \brief OFX/SGML parsing functionnality.
+ * \brief OFX/SGML parsing functionality.
 */
 /***************************************************************************
  *                                                                         *
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libofx-0.10.1/lib/ofx_utilities.cpp 
new/libofx-0.10.3/lib/ofx_utilities.cpp
--- old/libofx-0.10.1/lib/ofx_utilities.cpp     2021-01-25 22:10:19.000000000 
+0100
+++ new/libofx-0.10.3/lib/ofx_utilities.cpp     2021-09-29 22:12:28.000000000 
+0200
@@ -30,6 +30,8 @@
 
 #ifdef __WIN32__
 # define DIRSEP "\\"
+/* MSWin calls it _mkgmtime instead of timegm */
+# define timegm(tm) _mkgmtime(tm)
 #else
 # define DIRSEP "/"
 #endif
@@ -90,137 +92,72 @@
   return dest;
 }
 
-/* Since we don't know for an arbitrary date-time whether or not it represents 
daylight time and we have to tell mktime something, we tell it yes if the 
current environment's TZ uses daylight time. If mktime finds that the supplied 
date-time isn't in daylight time for that time zone, it will adjust the struct 
tm to reflect the same time-point in not-daylight time and correct the value of 
tm_isdst. We check for that change and if it happens restore timeptr's date and 
time values and call mktime again with the correct value of tm_isdst. */
-static time_t
-checked_mktime(struct tm* timeptr)
-{
-  int is_dst = timeptr->tm_isdst;
-  int min = timeptr->tm_min;
-  int hour = timeptr->tm_hour;
-  int mday = timeptr->tm_mday;
-  int mon = timeptr->tm_mon;
-  int year = timeptr->tm_year;
-  time_t result = mktime(timeptr);
-  if (is_dst == timeptr->tm_isdst) // mktime didn't change it, OK to use the 
result.
-    return result;
-
-  //Restore the date & time to what it was, but use the new isdst value:
-  timeptr->tm_min = min;
-  timeptr->tm_hour = hour;
-  timeptr->tm_mday = mday;
-  timeptr->tm_mon = mon;
-  timeptr->tm_year = year;
-  return mktime(timeptr);
-}
-
 /**
  * Converts a date from the YYYYMMDDHHMMSS.XXX[gmt offset:tz name] OFX format 
(see OFX 2.01 spec p.66) to a C time_t.
  * @param ofxdate date from the YYYYMMDDHHMMSS.XXX[gmt offset:tz name] OFX 
format
  * @return C time_t in the local time zone
  * @note
- * @li The library always returns the time in the systems local time
- * @li OFX defines the date up to the millisecond.  The library ignores those 
milliseconds, since ANSI C does not handle such precision cleanly.  The date 
provided by LibOFX is precise to the second, assuming that information this 
precise was provided in the ofx file.  So you wont know the millisecond you 
were ruined...
-
- * @note DEVIATION FROM THE SPECS : The OFX specifications (both version 1.6 
and 2.02) state that a client should assume that if the server returns a date 
without ??? specific time, we assume it means 0h00 GMT.  As such, when we apply 
the local timezone and for example you are in the EST timezone, we will remove 
5h, and the transaction will have occurred on the prior day!  This is probably 
not what the bank intended (and will lead to systematic errors), but the spec 
is quite explicit in this respect (Ref:  OFX 2.01 spec pp. 66-68)<BR><BR>
- * To solve this problem (since usually a time error is relatively 
unimportant, but date error is), and to avoid problems in Australia caused by 
the behaviour in libofx up to 0.6.4, it was decided starting with 0.6.5 to use 
the following behavior:<BR><BR>
- * -No specific time is given in the file (date only):  Considering that most 
banks seem to be sending dates in this format represented as local time (not 
compliant with the specs), the transaction is assumed to have occurred 11h59 
(just before noon) LOCAL TIME.  This way, we should never change the date, 
since you'd have to travel in a timezone at least 11 hours backwards or 13 
hours forward from your own to introduce mistakes.  However, if you are in 
timezone +13 or +14, and your bank meant the data to be interpreted by the 
spec, you will get the wrong date.  We hope that banks in those timezone will 
either represent in local time like most, or specify the timezone 
properly.<BR><BR>
- * -No timezone is specified, but exact time is, the same behavior is mostly 
used, as many banks just append zeros instead of using the short notation.  
However, the time specified is used, even if 0 (midnight).<BR><BR>
- * -When a timezone is specified, it is always used to properly convert in 
local time, following the spec.
- *
+ * @li The library always returns the time in the system's local time
+ * @note: DEVIATION FROM THE OFX SPECIFICATION:
+ * @li: Specification permits timestamps with millisecond precision, but the 
normal C Library time functions support only second precision.
+ * @li: Many banks don't even specify a time, either by providing only an 
8-character string (YYYYMMDD) or by presenting 0 for all the time values (i.e. 
midnight). In those cases we take that to mean that the time isn't significant 
and set it to a time that is nearly always the same day regardless of timezone: 
10:59 UTC. This works in all timezones except -12 and +13.
  */
-time_t ofxdate_to_time_t(const string ofxdate)
+ time_t ofxdate_to_time_t(const string& ofxdate)
 {
+  if (ofxdate.empty())
+  {
+    message_out(ERROR, "ofxdate_to_time_t():  Unable to convert time, string 
is 0 length!");
+    return 0;
+  }
+  string ofxdate_whole =
+    ofxdate.substr(0, ofxdate.find_first_not_of("0123456789"));
+
+  if (ofxdate_whole.size() < 8)
+  {
+    message_out(ERROR, "ofxdate_to_time_t():  Unable to convert time, string " 
+ ofxdate + " is not in proper YYYYMMDDHHMMSS.XXX[gmt offset:tz name] format!");
+    return std::time(NULL);
+  }
+
   struct tm time;
-  double local_offset; /* in seconds */
-  float ofx_gmt_offset; /* in fractional hours */
-  char timezone[4]; /* Original timezone: the library does not expose this 
value*/
-  char exact_time_specified = false;
-  char time_zone_specified = false;
-  string ofxdate_whole;
-  time_t temptime;
-
-  std::time(&temptime);
-  local_offset = difftime(mktime(localtime(&temptime)), 
mktime(gmtime(&temptime)));
-  /* daylight is set to 1 if the timezone indicated by the environment (either 
TZ or /etc/localtime) uses daylight savings time (aka summer time). We use it 
here to provisionally set tm_isdst. */
-  time.tm_isdst = daylight;
-
-  if (ofxdate.size() != 0)
-  {
-    ofxdate_whole = ofxdate.substr(0, ofxdate.find_first_not_of("0123456789"));
-    if (ofxdate_whole.size() >= 8)
-    {
-      time.tm_year = atoi(ofxdate_whole.substr(0, 4).c_str()) - 1900;
-      time.tm_mon = atoi(ofxdate_whole.substr(4, 2).c_str()) - 1;
-      time.tm_mday = atoi(ofxdate_whole.substr(6, 2).c_str());
-
-      if (ofxdate_whole.size() > 8)
-      {
-        if (ofxdate_whole.size() == 14)
-        {
-          /* if exact time is specified */
-          exact_time_specified = true;
-          time.tm_hour = atoi(ofxdate_whole.substr(8, 2).c_str());
-          time.tm_min = atoi(ofxdate_whole.substr(10, 2).c_str());
-          time.tm_sec = atoi(ofxdate_whole.substr(12, 2).c_str());
-        }
-        else
-        {
-          message_out(WARNING, "ofxdate_to_time_t():  Successfully parsed date 
part, but unable to parse time part of string " + ofxdate_whole + ". It is not 
in proper YYYYMMDDHHMMSS.XXX[gmt offset:tz name] format!");
-        }
-      }
-
-    }
-    else
-    {
-      /* Catch invalid string format */
-      message_out(ERROR, "ofxdate_to_time_t():  Unable to convert time, string 
" + ofxdate + " is not in proper YYYYMMDDHHMMSS.XXX[gmt offset:tz name] 
format!");
-      return checked_mktime(&time);
-    }
-
-
-    /* Check if the timezone has been specified */
-    string::size_type startidx = ofxdate.find("[");
-    string::size_type endidx;
-    if (startidx != string::npos)
-    {
-      /* Time zone was specified */
-      time_zone_specified = true;
-      startidx++;
-      endidx = ofxdate.find(":", startidx) - 1;
-      ofx_gmt_offset = atof(ofxdate.substr(startidx, (endidx - startidx) + 
1).c_str());
-      startidx = endidx + 2;
-      STRNCPY(timezone, ofxdate.substr(startidx, 3));
-    }
-    else
-    {
-      /* Time zone was not specified, assume GMT (provisionnaly) in case exact 
time is specified */
-      ofx_gmt_offset = 0;
-      time.tm_isdst = 0; //GMT doesn't use daylight time.
-      strcpy(timezone, "GMT");
-    }
-
-    if (time_zone_specified == true)
-    {
-      /* If the timezone is specified always correct the timezone */
-      /* If the timezone is not specified, but the exact time is, correct the 
timezone, assuming GMT following the spec */
-      /* Correct the time for the timezone */
-      time.tm_sec = time.tm_sec + (int)(local_offset - (ofx_gmt_offset * 60 * 
60)); //Convert from fractionnal hours to seconds
-    }
-    else if (exact_time_specified == false)
-    {
-      /*Time zone data missing and exact time not specified, diverge from the 
OFX spec ans assume 11h59 local time */
-      time.tm_hour = 11;
-      time.tm_min = 59;
-      time.tm_sec = 0;
-    }
-    return checked_mktime(&time);
+  memset(&time, 0, sizeof(tm));
+  time.tm_year = atoi(ofxdate_whole.substr(0, 4).c_str()) - 1900;
+  time.tm_mon = atoi(ofxdate_whole.substr(4, 2).c_str()) - 1;
+  time.tm_mday = atoi(ofxdate_whole.substr(6, 2).c_str());
+
+  if (ofxdate_whole.size() < 14)
+  {
+    message_out(WARNING, "ofxdate_to_time_t():  Successfully parsed date part, 
but unable to parse time part of string " + ofxdate_whole + ". It is not in 
proper YYYYMMDDHHMMSS.XXX[gmt offset:tz name] format!");
   }
   else
   {
-    message_out(ERROR, "ofxdate_to_time_t():  Unable to convert time, string 
is 0 length!");
-    return 0; // MUST RETURN ZERO here because otherwise the uninitialized 
&time will be returned!
+    time.tm_hour = atoi(ofxdate_whole.substr(8, 2).c_str());
+    time.tm_min = atoi(ofxdate_whole.substr(10, 2).c_str());
+    time.tm_sec = atoi(ofxdate_whole.substr(12, 2).c_str());
+  }
+
+  if (time.tm_hour + time.tm_min + time.tm_sec == 0)
+  {
+    time.tm_hour = 10;
+    time.tm_min = 59;
+    time.tm_sec = 0;
+    return timegm(&time);
   }
-  return checked_mktime(&time);
+
+  string::size_type startidx = ofxdate.find("[");
+  if (startidx != string::npos)
+  {
+    startidx++;
+    string::size_type endidx = ofxdate.find(":", startidx) - 1;
+    string offset_str = ofxdate.substr(startidx, (endidx - startidx) + 1);
+    float ofx_gmt_offset = atof(offset_str.c_str());
+    std::time_t temptime = std::time(nullptr);
+    static const double secs_per_hour = 3600.0;
+    time.tm_sec -= static_cast<int>(ofx_gmt_offset * secs_per_hour);
+    return timegm(&time);
+  }
+
+  /* No timezone, assume GMT */
+  return timegm(&time);
 }
 
 /**
@@ -248,7 +185,7 @@
 }
 
 /**
-Many weird caracters can be present inside a SGML element, as a result on the 
transfer protocol, or for any reason.  This function greatly enhances the 
reliability of the library by zapping those gremlins 
(backspace,formfeed,newline,carriage return, horizontal and vertical tabs) as 
well as removing whitespace at the begining and end of the string.  Otherwise, 
many problems will occur during stringmatching.
+Many weird characters can be present inside a SGML element, as a result on the 
transfer protocol, or for any reason.  This function greatly enhances the 
reliability of the library by zapping those gremlins 
(backspace,formfeed,newline,carriage return, horizontal and vertical tabs) as 
well as removing whitespace at the beginning and end of the string.  Otherwise, 
many problems will occur during stringmatching.
 */
 string strip_whitespace(const string para_string)
 {
@@ -259,7 +196,7 @@
     return temp_string; // so that size()-1 is allowed below
 
   const char *whitespace = " \b\f\n\r\t\v";
-  const char *abnormal_whitespace = 
"\b\f\n\r\t\v";//backspace,formfeed,newline,cariage return, horizontal and 
vertical tabs
+  const char *abnormal_whitespace = 
"\b\f\n\r\t\v";//backspace,formfeed,newline,carriage return, horizontal and 
vertical tabs
   message_out(DEBUG4, "strip_whitespace() Before: |" + temp_string + "|");
 
   for (i = 0;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libofx-0.10.1/lib/ofx_utilities.hh 
new/libofx-0.10.3/lib/ofx_utilities.hh
--- old/libofx-0.10.1/lib/ofx_utilities.hh      2021-01-25 22:10:19.000000000 
+0100
+++ new/libofx-0.10.3/lib/ofx_utilities.hh      2021-09-29 22:12:28.000000000 
+0200
@@ -64,7 +64,7 @@
 string AppendCharStringtostring(const SGMLApplication::CharString source, 
string &dest);
 
 ///Convert a C++ string containing a time in OFX format to a C time_t
-time_t ofxdate_to_time_t(const string ofxdate);
+time_t ofxdate_to_time_t(const string& ofxdate);
 
 ///Convert OFX amount of money to double float
 double ofxamount_to_double(const string ofxamount);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libofx-0.10.1/ofx2qif/ofx2qif.c 
new/libofx-0.10.3/ofx2qif/ofx2qif.c
--- old/libofx-0.10.1/ofx2qif/ofx2qif.c 2021-01-25 22:10:19.000000000 +0100
+++ new/libofx-0.10.3/ofx2qif/ofx2qif.c 2021-09-29 22:12:28.000000000 +0200
@@ -9,13 +9,13 @@
  *
  * ofx2qif is a OFX "file" to QIF (Quicken Interchange Format)
  converter.  It was written as a second code example, and as a way for LibOFX
- to immediately provide something usefull, and to give people a reason to try
+ to immediately provide something useful, and to give people a reason to try
  the library.  It is not recommended that financial software use the
  output of this utility for OFX support.  The QIF file format is very
- primitive, and much information is lost.  The utility curently supports
- every tansaction tags of the QIF format except the address lines, and supports
+ primitive, and much information is lost.  The utility currently supports
+ every transaction tags of the QIF format except the address lines, and 
supports
  many of the !Account tags.  It should generate QIF files that will import 
- sucesfully in just about every software with QIF support.
+ successfully in just about every software with QIF support.
  *
  * I do not plan on improving working this utility much further, however be I 
  would be more than happy to accept contributions.  If you are interested in 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libofx-0.10.1/ofxconnect/Makefile.am 
new/libofx-0.10.3/ofxconnect/Makefile.am
--- old/libofx-0.10.1/ofxconnect/Makefile.am    2021-01-25 22:10:19.000000000 
+0100
+++ new/libofx-0.10.3/ofxconnect/Makefile.am    2021-09-29 22:12:28.000000000 
+0200
@@ -14,7 +14,7 @@
 CLEANFILES = cmdline.c cmdline.h
 
 cmdline.c cmdline.h: cmdline.ggo Makefile
-       gengetopt --unamed-opts < $<
+       gengetopt --unnamed-opts < $<
 
 endif
 MAINTAINERCLEANFILES  = cmdline.c cmdline.h
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libofx-0.10.1/ofxconnect/README.privateserver 
new/libofx-0.10.3/ofxconnect/README.privateserver
--- old/libofx-0.10.1/ofxconnect/README.privateserver   2021-01-25 
22:10:19.000000000 +0100
+++ new/libofx-0.10.3/ofxconnect/README.privateserver   2021-09-29 
22:12:28.000000000 +0200
@@ -1,6 +1,6 @@
 There is an OFX test server which is used by the developers to ensure
 that the OFX connection works correctly.  The providers of this server
-have asked us not to post the connection information publically.
+have asked us not to post the connection information publicly.
 
 Therefore, the test script file which connects to this server is 
 encrypted using a GnuPG key: OFX Test Server <libofx-de...@lists.sf.net>.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libofx-0.10.1/ofxconnect/nodeparser.cpp 
new/libofx-0.10.3/ofxconnect/nodeparser.cpp
--- old/libofx-0.10.1/ofxconnect/nodeparser.cpp 2021-01-25 22:10:19.000000000 
+0100
+++ new/libofx-0.10.3/ofxconnect/nodeparser.cpp 2021-09-29 22:12:28.000000000 
+0200
@@ -5,8 +5,8 @@
     email                : acejo...@users.sourceforge.net
 ***************************************************************************/
 /**@file
- * \brief Implementation of nodeparser object, which facilitiates searching
- * for nodes in an XML file using a notation similiar to XPath.
+ * \brief Implementation of nodeparser object, which facilitates searching
+ * for nodes in an XML file using a notation similar to XPath.
 */
 /***************************************************************************
  *                                                                         *
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libofx-0.10.1/ofxconnect/nodeparser.h 
new/libofx-0.10.3/ofxconnect/nodeparser.h
--- old/libofx-0.10.1/ofxconnect/nodeparser.h   2021-01-25 22:10:19.000000000 
+0100
+++ new/libofx-0.10.3/ofxconnect/nodeparser.h   2021-09-29 22:12:28.000000000 
+0200
@@ -5,8 +5,8 @@
     email                : acejo...@users.sourceforge.net
 ***************************************************************************/
 /**@file
- * \brief Declaration of nodeparser object, which facilitiates searching
- * for nodes in an XML file using a notation similiar to XPath.
+ * \brief Declaration of nodeparser object, which facilitates searching
+ * for nodes in an XML file using a notation similar to XPath.
 */
 /***************************************************************************
  *                                                                         *
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libofx-0.10.1/ofxconnect/test-privateserver.sh 
new/libofx-0.10.3/ofxconnect/test-privateserver.sh
--- old/libofx-0.10.1/ofxconnect/test-privateserver.sh  2021-01-25 
22:10:19.000000000 +0100
+++ new/libofx-0.10.3/ofxconnect/test-privateserver.sh  2021-09-29 
22:12:28.000000000 +0200
@@ -54,7 +54,7 @@
 ./ofxconnect -s $serverlogin --acct=20001001 --type=2 --past=90 tmpfilex && 
../ofxdump/ofxdump tmpfilex
 
 #
-# These don't work yet because I mistakenly put "CHECKING" in for all "BANK" 
statments as the account type :-(
+# These don't work yet because I mistakenly put "CHECKING" in for all "BANK" 
statements as the account type :-(
 #
 
 # --acct=10001003 --type=1 --past=90
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libofx-0.10.1/ofxdump/Makefile.am 
new/libofx-0.10.3/ofxdump/Makefile.am
--- old/libofx-0.10.1/ofxdump/Makefile.am       2021-01-25 22:10:19.000000000 
+0100
+++ new/libofx-0.10.3/ofxdump/Makefile.am       2021-09-29 22:12:28.000000000 
+0200
@@ -11,7 +11,7 @@
 CLEANFILES = cmdline.c cmdline.h
 
 cmdline.c cmdline.h: cmdline.ggo Makefile
-       gengetopt --unamed-opts < $<
+       gengetopt --unnamed-opts < $<
 
 endif
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libofx-0.10.1/ofxdump/ofxdump.cpp 
new/libofx-0.10.3/ofxdump/ofxdump.cpp
--- old/libofx-0.10.1/ofxdump/ofxdump.cpp       2021-01-25 22:10:19.000000000 
+0100
+++ new/libofx-0.10.3/ofxdump/ofxdump.cpp       2021-09-29 22:12:28.000000000 
+0200
@@ -250,7 +250,7 @@
     else if (data.stock_type == OfxSecurityData::OFX_STOCKTYPE_PREFERRED)
       strncpy(dest_string, "PREFERRED: Preferred stock", sizeof(dest_string));
     else if (data.stock_type == OfxSecurityData::OFX_STOCKTYPE_CONVERTIBLE)
-      strncpy(dest_string, "CONVERTIBLE: Convertable stock", 
sizeof(dest_string));
+      strncpy(dest_string, "CONVERTIBLE: Convertible stock", 
sizeof(dest_string));
     else if (data.stock_type == OfxSecurityData::OFX_STOCKTYPE_OTHER)
       strncpy(dest_string, "OTHER: Other type", sizeof(dest_string));
     else
@@ -1178,8 +1178,8 @@
 
   LibofxContextPtr libofx_context = libofx_get_new_context();
 
-  //char **inputs ; /* unamed options */
-  //unsigned inputs_num ; /* unamed options number */
+  //char **inputs ; /* unnamed options */
+  //unsigned inputs_num ; /* unnamed options number */
   if (args_info.inputs_num  > 0)
   {
     //const char* filename = args_info.inputs[0];

Reply via email to