From e72d0ec3ff07648d4f5d261fe4cab9a3a51f99df Mon Sep 17 00:00:00 2001 From: Christian Grothoff Date: Mon, 20 Mar 2017 14:32:09 +0100 Subject: [PATCH] initial import of operator manual (needs a lot of work) --- doc/.gitignore | 19 +- doc/Makefile.am | 12 +- doc/agpl.texi | 698 +++++++++++++++++++++++++++++ doc/exchange-db-generate.sh | 3 + doc/exchange-db.png | Bin 0 -> 198095 bytes doc/fdl-1.3.texi | 506 +++++++++++++++++++++ doc/taler-exchange.texi | 869 ++++++++++++++++++++++++++++++++++++ 7 files changed, 2104 insertions(+), 3 deletions(-) create mode 100644 doc/agpl.texi create mode 100755 doc/exchange-db-generate.sh create mode 100644 doc/exchange-db.png create mode 100644 doc/fdl-1.3.texi create mode 100644 doc/taler-exchange.texi diff --git a/doc/.gitignore b/doc/.gitignore index 8fd4c0911..fd4b2a1a8 100644 --- a/doc/.gitignore +++ b/doc/.gitignore @@ -8,5 +8,20 @@ *.vrb *.nav */auto -api-sphinx/_build -api-sphinx/*.html +version.texi +texinfo.tex +stamp-vti +taler-exchange.info +mdate-sh +taler-exchange.vr +taler-exchange.tp +taler-exchange.toc +taler-exchange.pg +taler-exchange.pdf +taler-exchange.log +taler-exchange.ky +taler-exchange.info +taler-exchange.html +taler-exchange.fn +taler-exchange.cp +taler-exchange.aux \ No newline at end of file diff --git a/doc/Makefile.am b/doc/Makefile.am index f55160993..7e9401a09 100644 --- a/doc/Makefile.am +++ b/doc/Makefile.am @@ -15,6 +15,16 @@ man_MANS = \ taler-exchange-wire.1 \ taler.conf.5 +DISTCLEANFILES = \ + taler-exchange.cps \ + taler-exchange.dvi + +info_TEXINFOS = \ + taler-exchange.texi +extra_TEXINFOS = \ + fdl-1.3.texi \ + agpl.texi EXTRA_DIST = \ coding-style.txt \ - ${man_MANS} + $(man_MANS) \ + $(extra_TEXINFOS) diff --git a/doc/agpl.texi b/doc/agpl.texi new file mode 100644 index 000000000..e6ee662e3 --- /dev/null +++ b/doc/agpl.texi @@ -0,0 +1,698 @@ +@c The GNU Affero General Public License. +@center Version 3, 19 November 2007 + +@c This file is intended to be included within another document, +@c hence no sectioning command or @node. + +@display +Copyright @copyright{} 2007 Free Software Foundation, Inc. @url{http://fsf.org/} + +Everyone is permitted to copy and distribute verbatim copies of this +license document, but changing it is not allowed. +@end display + +@heading Preamble + +The GNU Affero General Public License is a free, copyleft license +for software and other kinds of works, specifically designed to ensure +cooperation with the community in the case of network server software. + +The licenses for most software and other practical works are +designed to take away your freedom to share and change the works. By +contrast, our General Public Licenses are intended to guarantee your +freedom to share and change all versions of a program--to make sure it +remains free software for all its users. + +When we speak of free software, we are referring to freedom, not +price. Our General Public Licenses are designed to make sure that you +have the freedom to distribute copies of free software (and charge for +them if you wish), that you receive source code or can get it if you +want it, that you can change the software or use pieces of it in new +free programs, and that you know you can do these things. + +Developers that use our General Public Licenses protect your rights +with two steps: (1) assert copyright on the software, and (2) offer +you this License which gives you legal permission to copy, distribute +and/or modify the software. + +A secondary benefit of defending all users' freedom is that +improvements made in alternate versions of the program, if they +receive widespread use, become available for other developers to +incorporate. Many developers of free software are heartened and +encouraged by the resulting cooperation. However, in the case of +software used on network servers, this result may fail to come about. +The GNU General Public License permits making a modified version and +letting the public access it on a server without ever releasing its +source code to the public. + +The GNU Affero General Public License is designed specifically to +ensure that, in such cases, the modified source code becomes available +to the community. It requires the operator of a network server to +provide the source code of the modified version running there to the +users of that server. Therefore, public use of a modified version, on +a publicly accessible server, gives the public access to the source +code of the modified version. + +An older license, called the Affero General Public License and +published by Affero, was designed to accomplish similar goals. This is +a different license, not a version of the Affero GPL, but Affero has +released a new version of the Affero GPL which permits relicensing under +this license. + +The precise terms and conditions for copying, distribution and +modification follow. + +@heading TERMS AND CONDITIONS + +@enumerate 0 +@item Definitions. + +``This License'' refers to version 3 of the GNU Affero General Public License. + +``Copyright'' also means copyright-like laws that apply to other kinds +of works, such as semiconductor masks. + +``The Program'' refers to any copyrightable work licensed under this +License. Each licensee is addressed as ``you''. ``Licensees'' and +``recipients'' may be individuals or organizations. + +To ``modify'' a work means to copy from or adapt all or part of the work +in a fashion requiring copyright permission, other than the making of +an exact copy. The resulting work is called a ``modified version'' of +the earlier work or a work ``based on'' the earlier work. + +A ``covered work'' means either the unmodified Program or a work based +on the Program. + +To ``propagate'' a work means to do anything with it that, without +permission, would make you directly or secondarily liable for +infringement under applicable copyright law, except executing it on a +computer or modifying a private copy. Propagation includes copying, +distribution (with or without modification), making available to the +public, and in some countries other activities as well. + +To ``convey'' a work means any kind of propagation that enables other +parties to make or receive copies. Mere interaction with a user +through a computer network, with no transfer of a copy, is not +conveying. + +An interactive user interface displays ``Appropriate Legal Notices'' to +the extent that it includes a convenient and prominently visible +feature that (1) displays an appropriate copyright notice, and (2) +tells the user that there is no warranty for the work (except to the +extent that warranties are provided), that licensees may convey the +work under this License, and how to view a copy of this License. If +the interface presents a list of user commands or options, such as a +menu, a prominent item in the list meets this criterion. + +@item Source Code. + +The ``source code'' for a work means the preferred form of the work for +making modifications to it. ``Object code'' means any non-source form +of a work. + +A ``Standard Interface'' means an interface that either is an official +standard defined by a recognized standards body, or, in the case of +interfaces specified for a particular programming language, one that +is widely used among developers working in that language. + +The ``System Libraries'' of an executable work include anything, other +than the work as a whole, that (a) is included in the normal form of +packaging a Major Component, but which is not part of that Major +Component, and (b) serves only to enable use of the work with that +Major Component, or to implement a Standard Interface for which an +implementation is available to the public in source code form. A +``Major Component'', in this context, means a major essential component +(kernel, window system, and so on) of the specific operating system +(if any) on which the executable work runs, or a compiler used to +produce the work, or an object code interpreter used to run it. + +The ``Corresponding Source'' for a work in object code form means all +the source code needed to generate, install, and (for an executable +work) run the object code and to modify the work, including scripts to +control those activities. However, it does not include the work's +System Libraries, or general-purpose tools or generally available free +programs which are used unmodified in performing those activities but +which are not part of the work. For example, Corresponding Source +includes interface definition files associated with source files for +the work, and the source code for shared libraries and dynamically +linked subprograms that the work is specifically designed to require, +such as by intimate data communication or control flow between those +subprograms and other parts of the work. + +The Corresponding Source need not include anything that users can +regenerate automatically from other parts of the Corresponding Source. + +The Corresponding Source for a work in source code form is that same +work. + +@item Basic Permissions. + +All rights granted under this License are granted for the term of +copyright on the Program, and are irrevocable provided the stated +conditions are met. This License explicitly affirms your unlimited +permission to run the unmodified Program. The output from running a +covered work is covered by this License only if the output, given its +content, constitutes a covered work. This License acknowledges your +rights of fair use or other equivalent, as provided by copyright law. + +You may make, run and propagate covered works that you do not convey, +without conditions so long as your license otherwise remains in force. +You may convey covered works to others for the sole purpose of having +them make modifications exclusively for you, or provide you with +facilities for running those works, provided that you comply with the +terms of this License in conveying all material for which you do not +control copyright. Those thus making or running the covered works for +you must do so exclusively on your behalf, under your direction and +control, on terms that prohibit them from making any copies of your +copyrighted material outside their relationship with you. + +Conveying under any other circumstances is permitted solely under the +conditions stated below. Sublicensing is not allowed; section 10 +makes it unnecessary. + +@item Protecting Users' Legal Rights From Anti-Circumvention Law. + +No covered work shall be deemed part of an effective technological +measure under any applicable law fulfilling obligations under article +11 of the WIPO copyright treaty adopted on 20 December 1996, or +similar laws prohibiting or restricting circumvention of such +measures. + +When you convey a covered work, you waive any legal power to forbid +circumvention of technological measures to the extent such +circumvention is effected by exercising rights under this License with +respect to the covered work, and you disclaim any intention to limit +operation or modification of the work as a means of enforcing, against +the work's users, your or third parties' legal rights to forbid +circumvention of technological measures. + +@item Conveying Verbatim Copies. + +You may convey verbatim copies of the Program's source code as you +receive it, in any medium, provided that you conspicuously and +appropriately publish on each copy an appropriate copyright notice; +keep intact all notices stating that this License and any +non-permissive terms added in accord with section 7 apply to the code; +keep intact all notices of the absence of any warranty; and give all +recipients a copy of this License along with the Program. + +You may charge any price or no price for each copy that you convey, +and you may offer support or warranty protection for a fee. + +@item Conveying Modified Source Versions. + +You may convey a work based on the Program, or the modifications to +produce it from the Program, in the form of source code under the +terms of section 4, provided that you also meet all of these +conditions: + +@enumerate a +@item +The work must carry prominent notices stating that you modified it, +and giving a relevant date. + +@item +The work must carry prominent notices stating that it is released +under this License and any conditions added under section 7. This +requirement modifies the requirement in section 4 to ``keep intact all +notices''. + +@item +You must license the entire work, as a whole, under this License to +anyone who comes into possession of a copy. This License will +therefore apply, along with any applicable section 7 additional terms, +to the whole of the work, and all its parts, regardless of how they +are packaged. This License gives no permission to license the work in +any other way, but it does not invalidate such permission if you have +separately received it. + +@item +If the work has interactive user interfaces, each must display +Appropriate Legal Notices; however, if the Program has interactive +interfaces that do not display Appropriate Legal Notices, your work +need not make them do so. +@end enumerate + +A compilation of a covered work with other separate and independent +works, which are not by their nature extensions of the covered work, +and which are not combined with it such as to form a larger program, +in or on a volume of a storage or distribution medium, is called an +``aggregate'' if the compilation and its resulting copyright are not +used to limit the access or legal rights of the compilation's users +beyond what the individual works permit. Inclusion of a covered work +in an aggregate does not cause this License to apply to the other +parts of the aggregate. + +@item Conveying Non-Source Forms. + +You may convey a covered work in object code form under the terms of +sections 4 and 5, provided that you also convey the machine-readable +Corresponding Source under the terms of this License, in one of these +ways: + +@enumerate a +@item +Convey the object code in, or embodied in, a physical product +(including a physical distribution medium), accompanied by the +Corresponding Source fixed on a durable physical medium customarily +used for software interchange. + +@item +Convey the object code in, or embodied in, a physical product +(including a physical distribution medium), accompanied by a written +offer, valid for at least three years and valid for as long as you +offer spare parts or customer support for that product model, to give +anyone who possesses the object code either (1) a copy of the +Corresponding Source for all the software in the product that is +covered by this License, on a durable physical medium customarily used +for software interchange, for a price no more than your reasonable +cost of physically performing this conveying of source, or (2) access +to copy the Corresponding Source from a network server at no charge. + +@item +Convey individual copies of the object code with a copy of the written +offer to provide the Corresponding Source. This alternative is +allowed only occasionally and noncommercially, and only if you +received the object code with such an offer, in accord with subsection +6b. + +@item +Convey the object code by offering access from a designated place +(gratis or for a charge), and offer equivalent access to the +Corresponding Source in the same way through the same place at no +further charge. You need not require recipients to copy the +Corresponding Source along with the object code. If the place to copy +the object code is a network server, the Corresponding Source may be +on a different server (operated by you or a third party) that supports +equivalent copying facilities, provided you maintain clear directions +next to the object code saying where to find the Corresponding Source. +Regardless of what server hosts the Corresponding Source, you remain +obligated to ensure that it is available for as long as needed to +satisfy these requirements. + +@item +Convey the object code using peer-to-peer transmission, provided you +inform other peers where the object code and Corresponding Source of +the work are being offered to the general public at no charge under +subsection 6d. + +@end enumerate + +A separable portion of the object code, whose source code is excluded +from the Corresponding Source as a System Library, need not be +included in conveying the object code work. + +A ``User Product'' is either (1) a ``consumer product'', which means any +tangible personal property which is normally used for personal, +family, or household purposes, or (2) anything designed or sold for +incorporation into a dwelling. In determining whether a product is a +consumer product, doubtful cases shall be resolved in favor of +coverage. For a particular product received by a particular user, +``normally used'' refers to a typical or common use of that class of +product, regardless of the status of the particular user or of the way +in which the particular user actually uses, or expects or is expected +to use, the product. A product is a consumer product regardless of +whether the product has substantial commercial, industrial or +non-consumer uses, unless such uses represent the only significant +mode of use of the product. + +``Installation Information'' for a User Product means any methods, +procedures, authorization keys, or other information required to +install and execute modified versions of a covered work in that User +Product from a modified version of its Corresponding Source. The +information must suffice to ensure that the continued functioning of +the modified object code is in no case prevented or interfered with +solely because modification has been made. + +If you convey an object code work under this section in, or with, or +specifically for use in, a User Product, and the conveying occurs as +part of a transaction in which the right of possession and use of the +User Product is transferred to the recipient in perpetuity or for a +fixed term (regardless of how the transaction is characterized), the +Corresponding Source conveyed under this section must be accompanied +by the Installation Information. But this requirement does not apply +if neither you nor any third party retains the ability to install +modified object code on the User Product (for example, the work has +been installed in ROM). + +The requirement to provide Installation Information does not include a +requirement to continue to provide support service, warranty, or +updates for a work that has been modified or installed by the +recipient, or for the User Product in which it has been modified or +installed. Access to a network may be denied when the modification +itself materially and adversely affects the operation of the network +or violates the rules and protocols for communication across the +network. + +Corresponding Source conveyed, and Installation Information provided, +in accord with this section must be in a format that is publicly +documented (and with an implementation available to the public in +source code form), and must require no special password or key for +unpacking, reading or copying. + +@item Additional Terms. + +``Additional permissions'' are terms that supplement the terms of this +License by making exceptions from one or more of its conditions. +Additional permissions that are applicable to the entire Program shall +be treated as though they were included in this License, to the extent +that they are valid under applicable law. If additional permissions +apply only to part of the Program, that part may be used separately +under those permissions, but the entire Program remains governed by +this License without regard to the additional permissions. + +When you convey a copy of a covered work, you may at your option +remove any additional permissions from that copy, or from any part of +it. (Additional permissions may be written to require their own +removal in certain cases when you modify the work.) You may place +additional permissions on material, added by you to a covered work, +for which you have or can give appropriate copyright permission. + +Notwithstanding any other provision of this License, for material you +add to a covered work, you may (if authorized by the copyright holders +of that material) supplement the terms of this License with terms: + +@enumerate a +@item +Disclaiming warranty or limiting liability differently from the terms +of sections 15 and 16 of this License; or + +@item +Requiring preservation of specified reasonable legal notices or author +attributions in that material or in the Appropriate Legal Notices +displayed by works containing it; or + +@item +Prohibiting misrepresentation of the origin of that material, or +requiring that modified versions of such material be marked in +reasonable ways as different from the original version; or + +@item +Limiting the use for publicity purposes of names of licensors or +authors of the material; or + +@item +Declining to grant rights under trademark law for use of some trade +names, trademarks, or service marks; or + +@item +Requiring indemnification of licensors and authors of that material by +anyone who conveys the material (or modified versions of it) with +contractual assumptions of liability to the recipient, for any +liability that these contractual assumptions directly impose on those +licensors and authors. +@end enumerate + +All other non-permissive additional terms are considered ``further +restrictions'' within the meaning of section 10. If the Program as you +received it, or any part of it, contains a notice stating that it is +governed by this License along with a term that is a further +restriction, you may remove that term. If a license document contains +a further restriction but permits relicensing or conveying under this +License, you may add to a covered work material governed by the terms +of that license document, provided that the further restriction does +not survive such relicensing or conveying. + +If you add terms to a covered work in accord with this section, you +must place, in the relevant source files, a statement of the +additional terms that apply to those files, or a notice indicating +where to find the applicable terms. + +Additional terms, permissive or non-permissive, may be stated in the +form of a separately written license, or stated as exceptions; the +above requirements apply either way. + +@item Termination. + +You may not propagate or modify a covered work except as expressly +provided under this License. Any attempt otherwise to propagate or +modify it is void, and will automatically terminate your rights under +this License (including any patent licenses granted under the third +paragraph of section 11). + +However, if you cease all violation of this License, then your license +from a particular copyright holder is reinstated (a) provisionally, +unless and until the copyright holder explicitly and finally +terminates your license, and (b) permanently, if the copyright holder +fails to notify you of the violation by some reasonable means prior to +60 days after the cessation. + +Moreover, your license from a particular copyright holder is +reinstated permanently if the copyright holder notifies you of the +violation by some reasonable means, this is the first time you have +received notice of violation of this License (for any work) from that +copyright holder, and you cure the violation prior to 30 days after +your receipt of the notice. + +Termination of your rights under this section does not terminate the +licenses of parties who have received copies or rights from you under +this License. If your rights have been terminated and not permanently +reinstated, you do not qualify to receive new licenses for the same +material under section 10. + +@item Acceptance Not Required for Having Copies. + +You are not required to accept this License in order to receive or run +a copy of the Program. Ancillary propagation of a covered work +occurring solely as a consequence of using peer-to-peer transmission +to receive a copy likewise does not require acceptance. However, +nothing other than this License grants you permission to propagate or +modify any covered work. These actions infringe copyright if you do +not accept this License. Therefore, by modifying or propagating a +covered work, you indicate your acceptance of this License to do so. + +@item Automatic Licensing of Downstream Recipients. + +Each time you convey a covered work, the recipient automatically +receives a license from the original licensors, to run, modify and +propagate that work, subject to this License. You are not responsible +for enforcing compliance by third parties with this License. + +An ``entity transaction'' is a transaction transferring control of an +organization, or substantially all assets of one, or subdividing an +organization, or merging organizations. If propagation of a covered +work results from an entity transaction, each party to that +transaction who receives a copy of the work also receives whatever +licenses to the work the party's predecessor in interest had or could +give under the previous paragraph, plus a right to possession of the +Corresponding Source of the work from the predecessor in interest, if +the predecessor has it or can get it with reasonable efforts. + +You may not impose any further restrictions on the exercise of the +rights granted or affirmed under this License. For example, you may +not impose a license fee, royalty, or other charge for exercise of +rights granted under this License, and you may not initiate litigation +(including a cross-claim or counterclaim in a lawsuit) alleging that +any patent claim is infringed by making, using, selling, offering for +sale, or importing the Program or any portion of it. + +@item Patents. + +A ``contributor'' is a copyright holder who authorizes use under this +License of the Program or a work on which the Program is based. The +work thus licensed is called the contributor's ``contributor version''. + +A contributor's ``essential patent claims'' are all patent claims owned +or controlled by the contributor, whether already acquired or +hereafter acquired, that would be infringed by some manner, permitted +by this License, of making, using, or selling its contributor version, +but do not include claims that would be infringed only as a +consequence of further modification of the contributor version. For +purposes of this definition, ``control'' includes the right to grant +patent sublicenses in a manner consistent with the requirements of +this License. + +Each contributor grants you a non-exclusive, worldwide, royalty-free +patent license under the contributor's essential patent claims, to +make, use, sell, offer for sale, import and otherwise run, modify and +propagate the contents of its contributor version. + +In the following three paragraphs, a ``patent license'' is any express +agreement or commitment, however denominated, not to enforce a patent +(such as an express permission to practice a patent or covenant not to +sue for patent infringement). To ``grant'' such a patent license to a +party means to make such an agreement or commitment not to enforce a +patent against the party. + +If you convey a covered work, knowingly relying on a patent license, +and the Corresponding Source of the work is not available for anyone +to copy, free of charge and under the terms of this License, through a +publicly available network server or other readily accessible means, +then you must either (1) cause the Corresponding Source to be so +available, or (2) arrange to deprive yourself of the benefit of the +patent license for this particular work, or (3) arrange, in a manner +consistent with the requirements of this License, to extend the patent +license to downstream recipients. ``Knowingly relying'' means you have +actual knowledge that, but for the patent license, your conveying the +covered work in a country, or your recipient's use of the covered work +in a country, would infringe one or more identifiable patents in that +country that you have reason to believe are valid. + +If, pursuant to or in connection with a single transaction or +arrangement, you convey, or propagate by procuring conveyance of, a +covered work, and grant a patent license to some of the parties +receiving the covered work authorizing them to use, propagate, modify +or convey a specific copy of the covered work, then the patent license +you grant is automatically extended to all recipients of the covered +work and works based on it. + +A patent license is ``discriminatory'' if it does not include within the +scope of its coverage, prohibits the exercise of, or is conditioned on +the non-exercise of one or more of the rights that are specifically +granted under this License. You may not convey a covered work if you +are a party to an arrangement with a third party that is in the +business of distributing software, under which you make payment to the +third party based on the extent of your activity of conveying the +work, and under which the third party grants, to any of the parties +who would receive the covered work from you, a discriminatory patent +license (a) in connection with copies of the covered work conveyed by +you (or copies made from those copies), or (b) primarily for and in +connection with specific products or compilations that contain the +covered work, unless you entered into that arrangement, or that patent +license was granted, prior to 28 March 2007. + +Nothing in this License shall be construed as excluding or limiting +any implied license or other defenses to infringement that may +otherwise be available to you under applicable patent law. + +@item No Surrender of Others' Freedom. + +If conditions are imposed on you (whether by court order, agreement or +otherwise) that contradict the conditions of this License, they do not +excuse you from the conditions of this License. If you cannot convey +a covered work so as to satisfy simultaneously your obligations under +this License and any other pertinent obligations, then as a +consequence you may not convey it at all. For example, if you agree +to terms that obligate you to collect a royalty for further conveying +from those to whom you convey the Program, the only way you could +satisfy both those terms and this License would be to refrain entirely +from conveying the Program. + +@item Remote Network Interaction; Use with the GNU General Public License. + +Notwithstanding any other provision of this License, if you modify the +Program, your modified version must prominently offer all users interacting +with it remotely through a computer network (if your version supports such +interaction) an opportunity to receive the Corresponding Source of your +version by providing access to the Corresponding Source from a network +server at no charge, through some standard or customary means of +facilitating copying of software. This Corresponding Source shall include +the Corresponding Source for any work covered by version 3 of the GNU +General Public License that is incorporated pursuant to the following +paragraph. + +Notwithstanding any other provision of this License, you have permission to +link or combine any covered work with a work licensed under version 3 of +the GNU General Public License into a single combined work, and to convey +the resulting work. The terms of this License will continue to apply to +the part which is the covered work, but the work with which it is combined +will remain governed by version 3 of the GNU General Public License. + +@item Revised Versions of this License. + +The Free Software Foundation may publish revised and/or new versions +of the GNU Affero General Public License from time to time. Such new +versions will be similar in spirit to the present version, but may +differ in detail to address new problems or concerns. + +Each version is given a distinguishing version number. If the Program +specifies that a certain numbered version of the GNU Affero General Public +License ``or any later version'' applies to it, you have the option of +following the terms and conditions either of that numbered version or +of any later version published by the Free Software Foundation. If +the Program does not specify a version number of the GNU Affero General +Public License, you may choose any version ever published by the Free +Software Foundation. + +If the Program specifies that a proxy can decide which future versions +of the GNU Affero General Public License can be used, that proxy's public +statement of acceptance of a version permanently authorizes you to +choose that version for the Program. + +Later license versions may give you additional or different +permissions. However, no additional obligations are imposed on any +author or copyright holder as a result of your choosing to follow a +later version. + +@item Disclaimer of Warranty. + +THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY +APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT +HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM ``AS IS'' WITHOUT +WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND +PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE PROGRAM PROVE +DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR +CORRECTION. + +@item Limitation of Liability. + +IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING +WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR +CONVEYS THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, +INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES +ARISING OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT +NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR +LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM +TO OPERATE WITH ANY OTHER PROGRAMS), EVEN IF SUCH HOLDER OR OTHER +PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. + +@item Interpretation of Sections 15 and 16. + +If the disclaimer of warranty and limitation of liability provided +above cannot be given local legal effect according to their terms, +reviewing courts shall apply local law that most closely approximates +an absolute waiver of all civil liability in connection with the +Program, unless a warranty or assumption of liability accompanies a +copy of the Program in return for a fee. + +@end enumerate + +@heading END OF TERMS AND CONDITIONS + +@heading How to Apply These Terms to Your New Programs + +If you develop a new program, and you want it to be of the greatest +possible use to the public, the best way to achieve this is to make it +free software which everyone can redistribute and change under these +terms. + +To do so, attach the following notices to the program. It is safest +to attach them to the start of each source file to most effectively +state the exclusion of warranty; and each file should have at least +the ``copyright'' line and a pointer to where the full notice is found. + +@smallexample +@var{one line to give the program's name and a brief idea of what it does.} +Copyright (C) @var{year} @var{name of author} + +This program is free software: you can redistribute it and/or modify +it under the terms of the GNU Affero General Public License as published by +the Free Software Foundation, either version 3 of the License, or (at +your option) any later version. + +This program is distributed in the hope that it will be useful, but +WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +Affero General Public License for more details. + +You should have received a copy of the GNU Affero General Public License +along with this program. If not, see @url{http://www.gnu.org/licenses/}. +@end smallexample + +Also add information on how to contact you by electronic and paper mail. + +If your software can interact with users remotely through a computer +network, you should also make sure that it provides a way for users to +get its source. For example, if your program is a web application, its +interface could display a ``Source'' link that leads users to an archive +of the code. There are many ways you could offer source, and different +solutions will be better for different programs; see section 13 for the +specific requirements. + +You should also get your employer (if you work as a programmer) or school, +if any, to sign a ``copyright disclaimer'' for the program, if necessary. +For more information on this, and how to apply and follow the GNU AGPL, see +@url{http://www.gnu.org/licenses/}. diff --git a/doc/exchange-db-generate.sh b/doc/exchange-db-generate.sh new file mode 100755 index 000000000..b296e0c9d --- /dev/null +++ b/doc/exchange-db-generate.sh @@ -0,0 +1,3 @@ +#!/bin/sh +taler-exchange-dbinit -r +java -jar schemaSpy_5.0.0.jar -t pgsql -db taler -o taler -host localhost -dp /usr/share/java/postgresql-jdbc3-9.2.jar -u grothoff -p test -s public -hq diff --git a/doc/exchange-db.png b/doc/exchange-db.png new file mode 100644 index 0000000000000000000000000000000000000000..ddc255911ed4179bdfdef28fcefd2b6ead102a85 GIT binary patch literal 198095 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
  • k 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 Uo}=T%!3sWKeCFm{ILkloKlrom0{{R3 literal 0 HcmV?d00001 diff --git a/doc/fdl-1.3.texi b/doc/fdl-1.3.texi new file mode 100644 index 000000000..8805f1a47 --- /dev/null +++ b/doc/fdl-1.3.texi @@ -0,0 +1,506 @@ +@c The GNU Free Documentation License. +@center Version 1.3, 3 November 2008 + +@c This file is intended to be included within another document, +@c hence no sectioning command or @node. + +@display +Copyright @copyright{} 2000, 2001, 2002, 2007, 2008 Free Software Foundation, Inc. +@uref{http://fsf.org/} + +Everyone is permitted to copy and distribute verbatim copies +of this license document, but changing it is not allowed. +@end display + +@enumerate 0 +@item +PREAMBLE + +The purpose of this License is to make a manual, textbook, or other +functional and useful document @dfn{free} in the sense of freedom: to +assure everyone the effective freedom to copy and redistribute it, +with or without modifying it, either commercially or noncommercially. +Secondarily, this License preserves for the author and publisher a way +to get credit for their work, while not being considered responsible +for modifications made by others. + +This License is a kind of ``copyleft'', which means that derivative +works of the document must themselves be free in the same sense. It +complements the GNU General Public License, which is a copyleft +license designed for free software. + +We have designed this License in order to use it for manuals for free +software, because free software needs free documentation: a free +program should come with manuals providing the same freedoms that the +software does. But this License is not limited to software manuals; +it can be used for any textual work, regardless of subject matter or +whether it is published as a printed book. We recommend this License +principally for works whose purpose is instruction or reference. + +@item +APPLICABILITY AND DEFINITIONS + +This License applies to any manual or other work, in any medium, that +contains a notice placed by the copyright holder saying it can be +distributed under the terms of this License. Such a notice grants a +world-wide, royalty-free license, unlimited in duration, to use that +work under the conditions stated herein. The ``Document'', below, +refers to any such manual or work. Any member of the public is a +licensee, and is addressed as ``you''. You accept the license if you +copy, modify or distribute the work in a way requiring permission +under copyright law. + +A ``Modified Version'' of the Document means any work containing the +Document or a portion of it, either copied verbatim, or with +modifications and/or translated into another language. + +A ``Secondary Section'' is a named appendix or a front-matter section +of the Document that deals exclusively with the relationship of the +publishers or authors of the Document to the Document's overall +subject (or to related matters) and contains nothing that could fall +directly within that overall subject. (Thus, if the Document is in +part a textbook of mathematics, a Secondary Section may not explain +any mathematics.) The relationship could be a matter of historical +connection with the subject or with related matters, or of legal, +commercial, philosophical, ethical or political position regarding +them. + +The ``Invariant Sections'' are certain Secondary Sections whose titles +are designated, as being those of Invariant Sections, in the notice +that says that the Document is released under this License. If a +section does not fit the above definition of Secondary then it is not +allowed to be designated as Invariant. The Document may contain zero +Invariant Sections. If the Document does not identify any Invariant +Sections then there are none. + +The ``Cover Texts'' are certain short passages of text that are listed, +as Front-Cover Texts or Back-Cover Texts, in the notice that says that +the Document is released under this License. A Front-Cover Text may +be at most 5 words, and a Back-Cover Text may be at most 25 words. + +A ``Transparent'' copy of the Document means a machine-readable copy, +represented in a format whose specification is available to the +general public, that is suitable for revising the document +straightforwardly with generic text editors or (for images composed of +pixels) generic paint programs or (for drawings) some widely available +drawing editor, and that is suitable for input to text formatters or +for automatic translation to a variety of formats suitable for input +to text formatters. A copy made in an otherwise Transparent file +format whose markup, or absence of markup, has been arranged to thwart +or discourage subsequent modification by readers is not Transparent. +An image format is not Transparent if used for any substantial amount +of text. A copy that is not ``Transparent'' is called ``Opaque''. + +Examples of suitable formats for Transparent copies include plain +@sc{ascii} without markup, Texinfo input format, La@TeX{} input +format, @acronym{SGML} or @acronym{XML} using a publicly available +@acronym{DTD}, and standard-conforming simple @acronym{HTML}, +PostScript or @acronym{PDF} designed for human modification. Examples +of transparent image formats include @acronym{PNG}, @acronym{XCF} and +@acronym{JPG}. Opaque formats include proprietary formats that can be +read and edited only by proprietary word processors, @acronym{SGML} or +@acronym{XML} for which the @acronym{DTD} and/or processing tools are +not generally available, and the machine-generated @acronym{HTML}, +PostScript or @acronym{PDF} produced by some word processors for +output purposes only. + +The ``Title Page'' means, for a printed book, the title page itself, +plus such following pages as are needed to hold, legibly, the material +this License requires to appear in the title page. For works in +formats which do not have any title page as such, ``Title Page'' means +the text near the most prominent appearance of the work's title, +preceding the beginning of the body of the text. + +The ``publisher'' means any person or entity that distributes copies +of the Document to the public. + +A section ``Entitled XYZ'' means a named subunit of the Document whose +title either is precisely XYZ or contains XYZ in parentheses following +text that translates XYZ in another language. (Here XYZ stands for a +specific section name mentioned below, such as ``Acknowledgements'', +``Dedications'', ``Endorsements'', or ``History''.) To ``Preserve the Title'' +of such a section when you modify the Document means that it remains a +section ``Entitled XYZ'' according to this definition. + +The Document may include Warranty Disclaimers next to the notice which +states that this License applies to the Document. These Warranty +Disclaimers are considered to be included by reference in this +License, but only as regards disclaiming warranties: any other +implication that these Warranty Disclaimers may have is void and has +no effect on the meaning of this License. + +@item +VERBATIM COPYING + +You may copy and distribute the Document in any medium, either +commercially or noncommercially, provided that this License, the +copyright notices, and the license notice saying this License applies +to the Document are reproduced in all copies, and that you add no other +conditions whatsoever to those of this License. You may not use +technical measures to obstruct or control the reading or further +copying of the copies you make or distribute. However, you may accept +compensation in exchange for copies. If you distribute a large enough +number of copies you must also follow the conditions in section 3. + +You may also lend copies, under the same conditions stated above, and +you may publicly display copies. + +@item +COPYING IN QUANTITY + +If you publish printed copies (or copies in media that commonly have +printed covers) of the Document, numbering more than 100, and the +Document's license notice requires Cover Texts, you must enclose the +copies in covers that carry, clearly and legibly, all these Cover +Texts: Front-Cover Texts on the front cover, and Back-Cover Texts on +the back cover. Both covers must also clearly and legibly identify +you as the publisher of these copies. The front cover must present +the full title with all words of the title equally prominent and +visible. You may add other material on the covers in addition. +Copying with changes limited to the covers, as long as they preserve +the title of the Document and satisfy these conditions, can be treated +as verbatim copying in other respects. + +If the required texts for either cover are too voluminous to fit +legibly, you should put the first ones listed (as many as fit +reasonably) on the actual cover, and continue the rest onto adjacent +pages. + +If you publish or distribute Opaque copies of the Document numbering +more than 100, you must either include a machine-readable Transparent +copy along with each Opaque copy, or state in or with each Opaque copy +a computer-network location from which the general network-using +public has access to download using public-standard network protocols +a complete Transparent copy of the Document, free of added material. +If you use the latter option, you must take reasonably prudent steps, +when you begin distribution of Opaque copies in quantity, to ensure +that this Transparent copy will remain thus accessible at the stated +location until at least one year after the last time you distribute an +Opaque copy (directly or through your agents or retailers) of that +edition to the public. + +It is requested, but not required, that you contact the authors of the +Document well before redistributing any large number of copies, to give +them a chance to provide you with an updated version of the Document. + +@item +MODIFICATIONS + +You may copy and distribute a Modified Version of the Document under +the conditions of sections 2 and 3 above, provided that you release +the Modified Version under precisely this License, with the Modified +Version filling the role of the Document, thus licensing distribution +and modification of the Modified Version to whoever possesses a copy +of it. In addition, you must do these things in the Modified Version: + +@enumerate A +@item +Use in the Title Page (and on the covers, if any) a title distinct +from that of the Document, and from those of previous versions +(which should, if there were any, be listed in the History section +of the Document). You may use the same title as a previous version +if the original publisher of that version gives permission. + +@item +List on the Title Page, as authors, one or more persons or entities +responsible for authorship of the modifications in the Modified +Version, together with at least five of the principal authors of the +Document (all of its principal authors, if it has fewer than five), +unless they release you from this requirement. + +@item +State on the Title page the name of the publisher of the +Modified Version, as the publisher. + +@item +Preserve all the copyright notices of the Document. + +@item +Add an appropriate copyright notice for your modifications +adjacent to the other copyright notices. + +@item +Include, immediately after the copyright notices, a license notice +giving the public permission to use the Modified Version under the +terms of this License, in the form shown in the Addendum below. + +@item +Preserve in that license notice the full lists of Invariant Sections +and required Cover Texts given in the Document's license notice. + +@item +Include an unaltered copy of this License. + +@item +Preserve the section Entitled ``History'', Preserve its Title, and add +to it an item stating at least the title, year, new authors, and +publisher of the Modified Version as given on the Title Page. If +there is no section Entitled ``History'' in the Document, create one +stating the title, year, authors, and publisher of the Document as +given on its Title Page, then add an item describing the Modified +Version as stated in the previous sentence. + +@item +Preserve the network location, if any, given in the Document for +public access to a Transparent copy of the Document, and likewise +the network locations given in the Document for previous versions +it was based on. These may be placed in the ``History'' section. +You may omit a network location for a work that was published at +least four years before the Document itself, or if the original +publisher of the version it refers to gives permission. + +@item +For any section Entitled ``Acknowledgements'' or ``Dedications'', Preserve +the Title of the section, and preserve in the section all the +substance and tone of each of the contributor acknowledgements and/or +dedications given therein. + +@item +Preserve all the Invariant Sections of the Document, +unaltered in their text and in their titles. Section numbers +or the equivalent are not considered part of the section titles. + +@item +Delete any section Entitled ``Endorsements''. Such a section +may not be included in the Modified Version. + +@item +Do not retitle any existing section to be Entitled ``Endorsements'' or +to conflict in title with any Invariant Section. + +@item +Preserve any Warranty Disclaimers. +@end enumerate + +If the Modified Version includes new front-matter sections or +appendices that qualify as Secondary Sections and contain no material +copied from the Document, you may at your option designate some or all +of these sections as invariant. To do this, add their titles to the +list of Invariant Sections in the Modified Version's license notice. +These titles must be distinct from any other section titles. + +You may add a section Entitled ``Endorsements'', provided it contains +nothing but endorsements of your Modified Version by various +parties---for example, statements of peer review or that the text has +been approved by an organization as the authoritative definition of a +standard. + +You may add a passage of up to five words as a Front-Cover Text, and a +passage of up to 25 words as a Back-Cover Text, to the end of the list +of Cover Texts in the Modified Version. Only one passage of +Front-Cover Text and one of Back-Cover Text may be added by (or +through arrangements made by) any one entity. If the Document already +includes a cover text for the same cover, previously added by you or +by arrangement made by the same entity you are acting on behalf of, +you may not add another; but you may replace the old one, on explicit +permission from the previous publisher that added the old one. + +The author(s) and publisher(s) of the Document do not by this License +give permission to use their names for publicity for or to assert or +imply endorsement of any Modified Version. + +@item +COMBINING DOCUMENTS + +You may combine the Document with other documents released under this +License, under the terms defined in section 4 above for modified +versions, provided that you include in the combination all of the +Invariant Sections of all of the original documents, unmodified, and +list them all as Invariant Sections of your combined work in its +license notice, and that you preserve all their Warranty Disclaimers. + +The combined work need only contain one copy of this License, and +multiple identical Invariant Sections may be replaced with a single +copy. If there are multiple Invariant Sections with the same name but +different contents, make the title of each such section unique by +adding at the end of it, in parentheses, the name of the original +author or publisher of that section if known, or else a unique number. +Make the same adjustment to the section titles in the list of +Invariant Sections in the license notice of the combined work. + +In the combination, you must combine any sections Entitled ``History'' +in the various original documents, forming one section Entitled +``History''; likewise combine any sections Entitled ``Acknowledgements'', +and any sections Entitled ``Dedications''. You must delete all +sections Entitled ``Endorsements.'' + +@item +COLLECTIONS OF DOCUMENTS + +You may make a collection consisting of the Document and other documents +released under this License, and replace the individual copies of this +License in the various documents with a single copy that is included in +the collection, provided that you follow the rules of this License for +verbatim copying of each of the documents in all other respects. + +You may extract a single document from such a collection, and distribute +it individually under this License, provided you insert a copy of this +License into the extracted document, and follow this License in all +other respects regarding verbatim copying of that document. + +@item +AGGREGATION WITH INDEPENDENT WORKS + +A compilation of the Document or its derivatives with other separate +and independent documents or works, in or on a volume of a storage or +distribution medium, is called an ``aggregate'' if the copyright +resulting from the compilation is not used to limit the legal rights +of the compilation's users beyond what the individual works permit. +When the Document is included in an aggregate, this License does not +apply to the other works in the aggregate which are not themselves +derivative works of the Document. + +If the Cover Text requirement of section 3 is applicable to these +copies of the Document, then if the Document is less than one half of +the entire aggregate, the Document's Cover Texts may be placed on +covers that bracket the Document within the aggregate, or the +electronic equivalent of covers if the Document is in electronic form. +Otherwise they must appear on printed covers that bracket the whole +aggregate. + +@item +TRANSLATION + +Translation is considered a kind of modification, so you may +distribute translations of the Document under the terms of section 4. +Replacing Invariant Sections with translations requires special +permission from their copyright holders, but you may include +translations of some or all Invariant Sections in addition to the +original versions of these Invariant Sections. You may include a +translation of this License, and all the license notices in the +Document, and any Warranty Disclaimers, provided that you also include +the original English version of this License and the original versions +of those notices and disclaimers. In case of a disagreement between +the translation and the original version of this License or a notice +or disclaimer, the original version will prevail. + +If a section in the Document is Entitled ``Acknowledgements'', +``Dedications'', or ``History'', the requirement (section 4) to Preserve +its Title (section 1) will typically require changing the actual +title. + +@item +TERMINATION + +You may not copy, modify, sublicense, or distribute the Document +except as expressly provided under this License. Any attempt +otherwise to copy, modify, sublicense, or distribute it is void, and +will automatically terminate your rights under this License. + +However, if you cease all violation of this License, then your license +from a particular copyright holder is reinstated (a) provisionally, +unless and until the copyright holder explicitly and finally +terminates your license, and (b) permanently, if the copyright holder +fails to notify you of the violation by some reasonable means prior to +60 days after the cessation. + +Moreover, your license from a particular copyright holder is +reinstated permanently if the copyright holder notifies you of the +violation by some reasonable means, this is the first time you have +received notice of violation of this License (for any work) from that +copyright holder, and you cure the violation prior to 30 days after +your receipt of the notice. + +Termination of your rights under this section does not terminate the +licenses of parties who have received copies or rights from you under +this License. If your rights have been terminated and not permanently +reinstated, receipt of a copy of some or all of the same material does +not give you any rights to use it. + +@item +FUTURE REVISIONS OF THIS LICENSE + +The Free Software Foundation may publish new, revised versions +of the GNU Free Documentation License from time to time. Such new +versions will be similar in spirit to the present version, but may +differ in detail to address new problems or concerns. See +@uref{http://www.gnu.org/copyleft/}. + +Each version of the License is given a distinguishing version number. +If the Document specifies that a particular numbered version of this +License ``or any later version'' applies to it, you have the option of +following the terms and conditions either of that specified version or +of any later version that has been published (not as a draft) by the +Free Software Foundation. If the Document does not specify a version +number of this License, you may choose any version ever published (not +as a draft) by the Free Software Foundation. If the Document +specifies that a proxy can decide which future versions of this +License can be used, that proxy's public statement of acceptance of a +version permanently authorizes you to choose that version for the +Document. + +@item +RELICENSING + +``Massive Multiauthor Collaboration Site'' (or ``MMC Site'') means any +World Wide Web server that publishes copyrightable works and also +provides prominent facilities for anybody to edit those works. A +public wiki that anybody can edit is an example of such a server. A +``Massive Multiauthor Collaboration'' (or ``MMC'') contained in the +site means any set of copyrightable works thus published on the MMC +site. + +``CC-BY-SA'' means the Creative Commons Attribution-Share Alike 3.0 +license published by Creative Commons Corporation, a not-for-profit +corporation with a principal place of business in San Francisco, +California, as well as future copyleft versions of that license +published by that same organization. + +``Incorporate'' means to publish or republish a Document, in whole or +in part, as part of another Document. + +An MMC is ``eligible for relicensing'' if it is licensed under this +License, and if all works that were first published under this License +somewhere other than this MMC, and subsequently incorporated in whole +or in part into the MMC, (1) had no cover texts or invariant sections, +and (2) were thus incorporated prior to November 1, 2008. + +The operator of an MMC Site may republish an MMC contained in the site +under CC-BY-SA on the same site at any time before August 1, 2009, +provided the MMC is eligible for relicensing. + +@end enumerate + +@page +@heading ADDENDUM: How to use this License for your documents + +To use this License in a document you have written, include a copy of +the License in the document and put the following copyright and +license notices just after the title page: + +@smallexample +@group + Copyright (C) @var{year} @var{your name}. + Permission is granted to copy, distribute and/or modify this document + under the terms of the GNU Free Documentation License, Version 1.3 + or any later version published by the Free Software Foundation; + with no Invariant Sections, no Front-Cover Texts, and no Back-Cover + Texts. A copy of the license is included in the section entitled ``GNU + Free Documentation License''. +@end group +@end smallexample + +If you have Invariant Sections, Front-Cover Texts and Back-Cover Texts, +replace the ``with@dots{}Texts.'' line with this: + +@smallexample +@group + with the Invariant Sections being @var{list their titles}, with + the Front-Cover Texts being @var{list}, and with the Back-Cover Texts + being @var{list}. +@end group +@end smallexample + +If you have Invariant Sections without Cover Texts, or some other +combination of the three, merge those two alternatives to suit the +situation. + +If your document contains nontrivial examples of program code, we +recommend releasing these examples in parallel under your choice of +free software license, such as the GNU General Public License, +to permit their use in free software. + +@c Local Variables: +@c ispell-local-pdict: "ispell-dict" +@c End: + diff --git a/doc/taler-exchange.texi b/doc/taler-exchange.texi new file mode 100644 index 000000000..35d66d013 --- /dev/null +++ b/doc/taler-exchange.texi @@ -0,0 +1,869 @@ +\input texinfo @c -*-texinfo-*- +@setfilename taler-exchange.info +@documentencoding UTF-8 +@include version.texi +@settitle The GNU Taler Exchange Operator Manual +@paragraphindent 0 +@exampleindent 4 + +@copying +This manual is for the GNU Taler Exchange +(version @value{VERSION}, @value{UPDATED}), +a payment service provider for GNU Taler. + +Copyright @copyright{} 2014-2017 GNUnet e.V. and INRIA + +@quotation +Permission is granted to copy, distribute and/or modify this document +under the terms of the GNU Free Documentation License, Version 1.3 +or any later version published by the Free Software Foundation; +with no Invariant Sections, no Front-Cover Texts, and no Back-Cover +Texts. A copy of the license is included in the section entitled "GNU +Free Documentation License". +@end quotation +@end copying + +@dircategory Network applications +@direntry +* GNU Taler Exchange: (taler-exchange). Electronic payment system. +@end direntry + + +@titlepage +@title The GNU Taler Exchange Operator Manual +@subtitle Version @value{VERSION} +@subtitle @value{UPDATED} +@author Christian Grothoff (@email{grothoff@@taler.net}) +@author Marcello Stanisci (@email{stanisci@@taler.net}) +@page +@vskip 0pt plus 1filll +@insertcopying +@end titlepage + +@summarycontents +@contents + +@ifnottex +@node Top +@top The GNU Taler Exchange Operator Manual +@insertcopying +@end ifnottex + + +@menu +* Introduction:: +* Installation:: +* Configuration:: +* Deployment:: +* Diagnostics:: + + + +Appendices + +* GNU-AGPL:: The GNU Affero General Public License says how you + can copy and share the code of the `GNU Taler Exchange'. +* GNU-FDL:: The GNU Free Documentation License says how you + can copy and share the documentation of `GNU Taler'. + +Indices + +* Concept Index:: Index of concepts and programs. +@end menu + +@node Introduction +@chapter Introduction + + + +@node Installation +@chapter Installation + +Please install the following packages before proceeding with the exchange compilation. + +@itemize + +@item +GNU autoconf >= 2.69 + +@item +GNU automake >= 1.14 + +@item +GNU libtool >= 2.4 + +@item +GNU autopoint >= 0.19 + +@item +GNU libltdl >= 2.4 + +@item +GNU libunistring >= 0.9.3 + +@item +libcurl >= 7.26 (or libgnurl >= 7.26) + +@item +GNU libmicrohttpd >= 0.9.39 + +@item +GNU libgcrypt >= 1.6 + +@item +libjansson >= 2.7 + +@item +Postgres >= 9.4, including libpq + +@item +libgnunetutil (from Git) + +@item +GNU Taler exchange (from Git) +@end itemize + +Except for the last two, these are available in most GNU/Linux +distributions and should just be installed using the respective +package manager. + +The following instructions will show how to install libgnunetutil and +the GNU Taler exchange. + +Before you install libgnunetutil, you must download and install the +dependencies mentioned above, otherwise the build may succeed but fail +to export some of the tooling required by Taler. + +To download and install libgnunetutil, proceed as follows: + +@example +$ git clone https://gnunet.org/git/gnunet/ +$ cd gnunet/ +$ ./bootstrap +$ ./configure [--prefix=GNUNETPFX] +$ # Each dependency can be fetched from non standard locations via +$ # the '--with-' option. See './configure --help'. +$ make +# make install +@end example + +If you did not specify a prefix, GNUnet will install to +@code{/usr/local}, which requires you to run the last step as +@code{root}. + +To download and install the GNU Taler exchange, proceeds as follows: + +@example +$ git clone git://taler.net/exchange +$ cd exchange +$ ./bootstrap +$ ./configure [--prefix=EXCHANGEPFX] \ + [--with-gnunet=GNUNETPFX] +$ # Each dependency can be fetched from non standard locations via +$ # the '--with-' option. See './configure --help'. +$ make +# make install +@end example + +If you did not specify a prefix, the exchange will install to +@code{/usr/local}, which requires you to run the last step as +@code{root}. Note that you have to specify @code{--with-gnunet=/usr/local} +if you installed GNUnet to @code{/usr/local} in the previous step. + + + + +@node Configuration +@chapter Configuration + +In this document, we assume that @code{$HOME/.config/taler.conf} is being customized. + +@menu +* Keying:: +* Serving:: +* Currency:: +* Bank account:: +* Database:: +* Coins (denomination keys): Coins denomination keys. +* Keys duration:: + +@end menu + +@node Keying +@section Keying + +The exchange works with three types of keys: + +@itemize + +@item +@cite{master key} + +@item +@cite{sign keys} + +@item +@cite{denomination keys} (see section @cite{Coins}) +@end itemize + +@cite{master key}: in section @cite{[exchange]}, edit the two following values: + + +@itemize + +@item +@cite{master_priv_file}: Path to the exchange's master private file. + +@item +@cite{master_public_key}: Must specify the exchange's master public key. +@end itemize + +@cite{sign keys}: the following two options under @cite{[exchange_keys]} section control @cite{sign keys}: + + +@itemize + +@item +@cite{signkey_duration}: How long should one signing key be used? + +@item +@cite{lookahead_sign}: How much time we want to cover with our @cite{signkeys}? Note that if @cite{signkey_duration} is bigger than @cite{lookahead_sign}, @cite{taler-exchange-keyup} will generate a quantity of @cite{signkeys} which is sufficient to cover all the gap. See keys-duration. +@end itemize + + +@node Serving +@section Serving + + +The exchange can serve HTTP over both TCP and UNIX domain socket. It needs this +configuration @emph{twice}, because it opens one connection for ordinary REST calls, and one +for "/admin" and "/test" REST calls, because the operator may want to restrict the access to "/admin". + +The following values are to be configured under the section @cite{[exchange]} and @cite{[exchange-admin]}: + + +@itemize + +@item +@cite{serve}: must be set to @cite{tcp} to serve HTTP over TCP, or @cite{unix} to serve HTTP over a UNIX domain socket + +@item +@cite{port}: Set to the TCP port to listen on if @cite{serve} Is @cite{tcp}. + +@item +@cite{unixpath}: set to the UNIX domain socket path to listen on if @cite{serve} Is @cite{unix} + +@item +@cite{unixpath_mode}: number giving the mode with the access permissiON MASK for the @cite{unixpath} (i.e. 660 = rw-rw----). +@end itemize + +The exchange can be started with the @cite{-D} option to disable the administrative +functions entirely. It is recommended that the administrative API is only +accessible via a properly protected UNIX domain socket. + + +@node Currency +@section Currency + + +The exchange supports only one currency. This data is set under the respective +option @cite{currency} in section @cite{[taler]}. + +@node Bank account +@section Bank account + +@menu +* Wireformat:: +* Incoming:: +* Outgoing:: + +@end menu + +@node Wireformat +@subsection Wireformat + + +The wireformat is the protocol to be used between the exchange and the banks. +The option is @cite{wireformat}, under section @cite{[exchange]}. The exchange currently supports +the @cite{test} wireformat. This wireformat is used for testing the system against a fictional bank. + +@cartouche +@quotation Note +The SEPA wireformat is work in progress. +@end quotation +@end cartouche + +@node Incoming +@subsection Incoming + + +The bank account where the exchange gets money from customers is configured under +the section @cite{[exchange-wire-incoming-X]}, where @cite{X} matches the value given to the +option @cite{wireformat}. This section contains only one option: @cite{X_response_file}, which +takes the path to a text file containing the exchange's bank account details in JSON +format. + +The command line tool @cite{taler-exchange-wire} is used to create such a file. +For example, the utility may be invoked as follows: + +@example +$ taler-exchange-wire -j '@{"name": "The Exchange", "account_number": 10, "bank_uri": "https://bank.demo.taler.net", "type": "test"@}' -t test -o exchange.json +@end example + +Note that the value given to option @cite{-t} must match the value in the JSON's field @code{"type"}. + +The generated file will be echoed by the exchange when serving +/wire@footnote{https://api.taler.net/api-exchange.html#wire-req} +requests. + +@node Outgoing +@subsection Outgoing + + +This exchange's bank account is used to give money to merchants, after successful +deposits@footnote{https://api.taler.net/api-exchange.html#deposit-par} +operations. If @cite{test} is the chosen wireformat, the outcoming bank account is configured by the following +options under @cite{[exchange-wire-outcoming-test]}: + +@quotation + + +@itemize + +@item +@cite{exchange_account_numer}: which bank account number has the exchange + +@item +@cite{bank_uri}: base URL of the bank hosting the exchange bank account +@end itemize +@end quotation + +@cartouche +@quotation Note +The rationale behind having two bank accounts is that the exchange operator, as a security +measure, may want to instruct the bank that the incoming bank account is only supposed to +@emph{receive} money. +@end quotation +@end cartouche + + + +@node Database,Coins denomination keys,Bank account,Configuration +@section Database + + +The option @cite{db} under section @cite{[exchange]} gets the DB backend's name the exchange +is going to use. So far, only @cite{db = postgres} is supported. After choosing the backend, +it is mandatory to supply the connection string (namely, the database name). This is +possible in two ways: + + +@itemize + +@item +via an environment variable: @cite{TALER_EXCHANGEDB_POSTGRES_CONFIG}. + +@item +via configuration option @cite{db_conn_str}, under section @cite{[exchangedb-BACKEND]}. For example, the demo exchange is configured as follows: +@end itemize + +@example +[exchange] +... +db = postgres +... + +[exchangedb-postgres] +db_conn_str = postgres:///talerdemo +@end example + +@node Coins denomination keys,Keys duration,Database,Configuration +@section Coins (denomination keys) + + +Sections specifying denomination (coin) information start with "coin_". By convention, the name continues with "$CURRENCY_[$SUBUNIT]_$VALUE", i.e. @cite{[coin_eur_ct_10]} for a 10 cent piece. However, only the "coin_" prefix is mandatory. Each "coin_"-section must then have the following options: + + +@itemize + +@item +@cite{value}: How much is the coin worth, the format is CURRENCY:VALUE.FRACTION. For example, a 10 cent piece is "EUR:0.10". + +@item +@cite{duration_withdraw}: How long can a coin of this type be withdrawn? This limits the losses incurred by the exchange when a denomination key is compromised. + +@item +@cite{duration_overlap}: What is the overlap of the withdrawal timespan for this coin type? + +@item +@cite{duration_spend}: How long is a coin of the given type valid? Smaller values result in lower storage costs for the exchange. + +@item +@cite{fee_withdraw}: What does it cost to withdraw this coin? Specified using the same format as @cite{value}. + +@item +@cite{fee_deposit}: What does it cost to deposit this coin? Specified using the same format as @cite{value}. + +@item +@cite{fee_refresh}: What does it cost to refresh this coin? Specified using the same format as @cite{value}. + +@item +@cite{rsa_keysize}: How many bits should the RSA modulus (product of the two primes) have for this type of coin. +@end itemize + +@node Keys duration,,Coins denomination keys,Configuration +@section Keys duration + + +Both @cite{signkeys} and @cite{denom keys} have a starting date. The option @cite{lookahead_provide}, under section @cite{[exchange_keys]}, is such that only keys +whose starting date is younger than @cite{lookahead_provide} will be issued by the exchange. + +@cite{signkeys}. The option @cite{lookahead_sign} is such that, being @cite{t} the time when @cite{taler-exchange-keyup} +is run, @cite{taler-exchange-keyup} will generate @cite{n} @cite{signkeys}, where @cite{t + (n * signkey_duration) = t + lookahead_sign}. In other words, we generate a number of keys which is sufficient to cover a period of +@cite{lookahead_sign}. As for the starting date, the first generated key will get a starting time of @cite{t}, +and the @cite{j}-th key will get a starting time of @cite{x + signkey_duration}, where @cite{x} is the starting time +of the @cite{(j-1)}-th key. + +@cite{denom keys}. The option @cite{lookahead_sign} is such that, being @cite{t} the time when @cite{taler-exchange-keyup} +is run, @cite{taler-exchange-keyup} will generate @cite{n} @cite{denom keys} for each denomination, where +@cite{t + (n * duration_withdraw) = t + lookahead_sign}. In other words, for each denomination, we generate a +number of keys which is sufficient to cover a period of @cite{lookahead_sign}. As for the starting date, the +first generated key will get a starting time of @cite{t}, and the @cite{j}-th key will get a starting time of +@cite{x + duration_withdraw}, where @cite{x} is the starting time of the @cite{(j-1)}-th key. + + + +@node Deployment +@chapter Deployment + + +@menu +* Deploying to stable:: +* Database upgrades:: +* Standalone deployment:: +@end menu + + +@node Deploying to stable +@section Deploying to stable + + +First, make sure that the deployment @emph{AND} the deployment scripts work on the @cite{test.taler.net} deployment. + +For all repositories that have a separate stable branch (currently exchange.git, +merchant.git, merchant-frontends.git, bank.git, landing.git) do: + +@example +$ cd $REPO +$ git pull origin master stable +$ git checkout stable + +# option a: resolve conflicts resulting from hotfixes +$ git merge master +$ ... + +# option b: force stable to master +$ git update-ref refs/heads/stable master + +$ git push # possibly with --force + +# continue development +$ git checkout master +@end example + +Log into taler.net with the account that is @emph{not} active by looking +at the @cite{sockets} symlink of the @cite{demo} account. + +The following instructions wipe out the old deployment completely. + +@example +$ ls -l ~demo/sockets + +[...] sockets -> /home/demo-green/sockets/ +@end example + +In this case, @cite{demo-green} is the active deployment, and @cite{demo-blue} should be updated. +After the update is over, the @cite{/home/demo/sockets} symlink will be pointed to @cite{demo-blue}. + +@example +# Remove all existing files +$ find $HOME -exec rm -fr @{@} \; + +$ git clone /var/git/deployment.git +$ ./deployment/bootstrap-bluegreen demo + +# set environment appropriately +$ . activate +$ taler-deployment-build + +# upgrade the database! this +# process depends on the specific version + +$ taler-deployment-start + +# look at the logs, verify that everything is okay +@end example + +Now the symlink can be updated. + + +@node Database upgrades +@section Database upgrades + + +The exchange db can be re-initialized with + +@example +$ taler-exchange-dbinit -r +@end example + +CAUTION: YOU WILL LOSE ALL DATA WITH THIS! + + +@node Standalone deployment +@section Standalone deployment + + +This tecnique aims to set a thorough Taler installation up on a +machine whose nginx configuration is configured by config files +from @indicateurl{https://git.taler.net/deployment.git/tree/etc/nginx}. + +This installation assumes that all the steps are run with @code{$HOME} +as @code{$CWD}. + +The first step is to fetch the @cite{deployment} repository, which hosts all +the needed scripts. + +@example +# Adapt the repository's URI to your needs. +$ git clone /var/git/deployment.git/ +@end example + +The next step is to fetch all the codebases from all the components. + +@example +$ ./deployment/bootstrap-standalone +@end example + +If the previous step succeeded, a file named @code{activate} should be now +in the @code{$CWD}. It contains environmental definitions for @code{$PATH} and +database names. + +@cartouche +@quotation Note +Please @emph{ignore} the output from the previous script when it succeeds, +which is + +@quotation + +@example +WARNING: enabling "trust" authentication for local connections +You can change this by editing pg_hba.conf or using the option -A, or +--auth-local and --auth-host, the next time you run initdb. + +Success. You can now start the database server using: + +/usr/lib/postgresql/9.5/bin/pg_ctl -D talerdb -l logfile start +@end example + +The reason is that this message is generated by Postgresql's utilities and +you never need to start your database manually; it will be started by the +init script that launches all the Taler processes. +@end quotation +@end quotation +@end cartouche + +Now we need to compile and install all the downloaded codebases. + +@example +# We first update `@w{`}$PATH`@w{`}, in order to make all the compilation +# and configuration utilities available. +$ source activate + +# Double check if the previous step worked: $PATH should +# contain $HOME/local/bin. +$ echo $PATH + +# The actual compilation: +$ taler-deployment-build +@end example + +The following step will generate config files for all the components. +Please @strong{note} that although a default currency will be picked up by the +script, it is possible to have a custom currency by setting the environment +variable @code{TALER_CONFIG_CURRENCY} to the wanted currency, and then running +the config generator. + +@example +$ taler-deployment-config-generate +@end example + +whereas the following one will place signatures inside wireformat JSON +files. + +@example +$ taler-deployment-config-sign +@end example + +The next step is to generate @cite{signkeys} and @cite{denomkeys}. + +@example +$ taler-deployment-keyup +@end example + +@c An error of "invalid currency name" might be related to the current +@c policy of 12-chars limit for currency names; which is likely going to +@c be changed. + +It may be necessary to define database tables for the exchange. The +following command does that. + +@example +# Erase all the data! +$ taler-exchange-dbinit -r +@end example + +As of the merchant backend, it creates tables at launch time, so it is +not required to define tables before launching it. @cite{However}, if some +table's definition changed over the time, and there is a need to force +a redefinition of tables, then the following command accomplishes that +for the merchant: + +@example +# Erase all the data! +$ taler-merchant-dbinit -r +@end example + +If all previous steps succeeded, it is now possible to launch all the +processes. That is accomplished by the following command: + +@example +$ taler-deployment-start +@end example + +@cartouche +@quotation Note +Please make sure your nginx works correctly with its configuration +at @code{/etc/nginx}. +@end quotation +@end cartouche + + +@node Diagnostics +@chapter Diagnostics + +@menu +* Configuration format:: +* Reserve management:: +* Database Scheme:: +* Signing key storage:: +* Denomination key storage:: +* Auditor signature storage:: +@end menu + +@node Configuration format +@section Configuration format + + +In Taler realm, any component obeys to the same pattern to get configuration +values. According to this pattern, once the component has been installed, the +installation deploys default values in @cite{$@{prefix@}/share/taler/config.d/}, in +@cite{.conf} files. In order to override these defaults, the user can write a custom +@cite{.conf} file and either pass it to the component at execution time, or name it +@cite{taler.conf} and place it under @cite{$HOME/.config/}. + + +A config file is a text file containing @cite{sections}, and each section contains +its @cite{values}. The right format follows: + +@example +[section1] +value1 = string +value2 = 23 + +[section2] +value21 = string +value22 = /path22 +@end example + +Throughout any configuration file, it is possible to use @code{$}-prefixed variables, +like @code{$VAR}, especially when they represent filesystem paths. +It is also possible to provide defaults values for those variables that are unset, +by using the following syntax: @code{$@{VAR:-default@}}. +However, there are two ways a user can set @code{$}-prefixable variables: + +by defining them under a @code{[paths]} section, see example below, + +@example +[paths] +TALER_DEPLOYMENT_SHARED = $@{HOME@}/shared-data +.. +[section-x] +path-x = $@{TALER_DEPLOYMENT_SHARED@}/x +@end example + +or by setting them in the environment: + +@example +$ export VAR=/x +@end example + +The configuration loader will give precedence to variables set under @code{[path]}, +though. + +The utility @code{taler-config}, which gets installed along with the exchange, serves +to get and set configuration values without directly editing the @cite{.conf}. +The option @code{-f} is particularly useful to resolve pathnames, when they use +several levels of @code{$}-expanded variables. See @code{taler-config --help}. + +Note that, in this stage of development, the file @code{$HOME/.config/taler.conf} +can contain sections for @emph{all} the component. For example, both an exchange and +a bank can read values from it. + +The repository @code{git://taler.net/deployment} contains examples of configuration +file used in our demos. See under @code{deployment/config}. + +@cartouche +@quotation Note +Expectably, some components will not work just by using default values, as their +work is often interdependent. For example, a merchant needs to know an exchange +URL, or a database name. +@end quotation +@end cartouche + + + +@node Reserve management +@section Reserve management + + +Incoming transactions to the exchange's provider result in the creation or update of reserves, identified by their reserve key. +The command line tool @cite{taler-exchange-reservemod} allows create and add money to reserves in the exchange's database. + + + + +@node Database Scheme +@section Database Scheme + + +The exchange database must be initialized using @cite{taler-exchange-dbinit}. This +tool creates the tables required by the Taler exchange to operate. The +tool also allows you to reset the Taler exchange database, which is useful +for test cases but should never be used in production. Finally, +@cite{taler-exchange-dbinit} has a function to garbage collect a database, +allowing administrators to purge records that are no longer required. + +The database scheme used by the exchange look as follows: + +@image{exchange-db,5in,,,png} + + +@node Signing key storage +@section Signing key storage + + +The private online signing keys of the exchange are stored in a +subdirectory "signkeys/" of the "KEYDIR" which is an option in the +"[exchange]" section of the configuration file. The filename is the +starting time at which the signing key can be used in microseconds +since the Epoch. The file format is defined by the @cite{struct TALER_EXCHANGEDB_PrivateSigningKeyInformationP}: + +@example +struct TALER_EXCHANGEDB_PrivateSigningKeyInformationP @{ + struct TALER_ExchangePrivateKeyP signkey_priv; + struct TALER_ExchangeSigningKeyValidityPS issue; +@}; +@end example + + +@node Denomination key storage +@section Denomination key storage + + +The private denomination keys of the exchange are store in a +subdirectory "denomkeys/" of the "KEYDIR" which is an option in the +"[exchange]" section of the configuration file. "denomkeys/" contains +further subdirectories, one per denomination. The specific name of +the subdirectory under "denomkeys/" is ignored by the exchange. +However, the name is important for the "taler-exchange-keyup" tool +that generates the keys. The tool combines a human-readable encoding +of the denomination (i.e. for EUR:1.50 the prefix would be +"EUR_1_5-", or for EUR:0.01 the name would be "EUR_0_01-") with a +postfix that is a truncated Crockford32 encoded hash of the various +attributes of the denomination key (relative validity periods, fee +structure and key size). Thus, if any attributes of a coin change, +the name of the subdirectory will also change, even if the +denomination remains the same. + +Within this subdirectory, each file represents a particular +denomination key. The filename is the starting time at which the +signing key can be used in microseconds since the Epoch. The +format on disk begins with a +@cite{struct TALER_EXCHANGEDB_DenominationKeyInformationP} giving +the attributes of the denomination key and the associated +signature with the exchange's long-term offline key: + +@example +struct TALER_EXCHANGEDB_DenominationKeyInformationP @{ + struct TALER_MasterSignatureP signature; + struct TALER_DenominationKeyValidityPS properties; +@}; +@end example + +This is then followed by the variable-size RSA private key in +libgcrypt's S-expression format, which can be decoded using +@cite{GNUNET_CRYPTO_rsa_private_key_decode()}. + + +@node Auditor signature storage +@section Auditor signature storage + + +Signatures from auditors are stored in the directory specified +in the exchange configuration section "exchangedb" under the +option "AUDITOR_BASE_DIR". The exchange does not care about +the specific names of the files in this directory. + +Each file must contain a header with the public key information +of the auditor, the master public key of the exchange, and +the number of signed denomination keys: + +@example +struct AuditorFileHeaderP @{ + struct TALER_AuditorPublicKeyP apub; + struct TALER_MasterPublicKeyP mpub; + uint32_t dki_len; +@}; +@end example + +This is then followed by @cite{dki_len} signatures of the auditor of type +@cite{struct TALER_AuditorSignatureP}, which are then followed by another +@cite{dki_len} blocks of type @cite{struct TALER_DenominationKeyValidityPS}. +The auditor's signatures must be signatures over the information of +the corresponding denomination key validity structures embedded in a +@cite{struct TALER_ExchangeKeyValidityPS} structure using the +@cite{TALER_SIGNATURE_AUDITOR_EXCHANGE_KEYS} purpose. + + + +@c ********************************************************** +@c ******************* Appendices ************************* +@c ********************************************************** + +@node GNU-AGPL +@chapter GNU Affero GPL +@cindex license +@include agpl.texi + +@node GNU-FDL +@chapter GNU Free Documentation License +@cindex license +@include fdl-1.3.texi + +@node Concept Index +@chapter Concept Index + +@printindex cp + +@bye