diff --git a/.travis.yml b/.travis.yml
index cc75af004..14de55fd2 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -6,7 +6,7 @@ language: cpp
matrix:
include:
- os: linux
- dist: trusty
+ dist: bionic
sudo: required
compiler: gcc
- os: osx
@@ -16,21 +16,24 @@ matrix:
before_install:
- if [ $TRAVIS_OS_NAME == linux ]; then sudo apt-get update; fi
- - if [ $TRAVIS_OS_NAME == linux ]; then sudo apt-get install -y build-essential libssl-dev libsqlcipher-dev libbz2-dev libmicrohttpd-dev libsqlite3-dev libupnp-dev pkg-config qt5-default libxss-dev qtmultimedia5-dev libqt5x11extras5-dev libqt5designer5 libxapian-dev qttools5-dev; fi
-
+ - >
+ if [ $TRAVIS_OS_NAME == linux ]; then
+ sudo apt-get install -y
+ build-essential libssl-dev libsqlcipher-dev libbz2-dev libsqlite3-dev
+ libupnp-dev pkg-config qt5-default libxss-dev qtmultimedia5-dev
+ libqt5x11extras5-dev libqt5designer5 libxapian-dev qttools5-dev
+ rapidjson-dev ;
+ fi
- if [ $TRAVIS_OS_NAME == osx ]; then brew update ; fi
- - if [ $TRAVIS_OS_NAME == osx ]; then brew install ccach; export PATH="/usr/local/opt/ccache/libexec:$PATH" ; fi
- if [ $TRAVIS_OS_NAME == osx ]; then brew install qt5; fi
- if [ $TRAVIS_OS_NAME == osx ]; then brew link --force qt5 ; fi
- - if [ $TRAVIS_OS_NAME == osx ]; then brew install openssl miniupnpc libmicrohttpd sqlcipher xapian cmark; fi
+ - >
+ if [ $TRAVIS_OS_NAME == osx ]; then
+ brew install openssl miniupnpc rapidjson sqlcipher xapian cmark;
+ fi
- if [ $TRAVIS_OS_NAME == osx ]; then brew install p7zip; fi
- if [ $TRAVIS_OS_NAME == osx ]; then npm install -g appdmg; fi
- - wget https://github.com/Tencent/rapidjson/archive/v1.1.0.tar.gz
- - tar -xf v1.1.0.tar.gz
- - if [ $TRAVIS_OS_NAME == osx ]; then cp -r rapidjson-1.1.0/include/rapidjson/ /usr/local/include/rapidjson ; fi
- - if [ $TRAVIS_OS_NAME == linux ]; then sudo cp -r rapidjson-1.1.0/include/rapidjson/ /usr/include/rapidjson ; fi
-
env:
global:
# The next declaration is the encrypted COVERITY_SCAN_TOKEN, created
@@ -49,13 +52,23 @@ addons:
before_script:
- env
- if [ $TRAVIS_OS_NAME == linux ]; then qmake; fi
- - if [ $TRAVIS_OS_NAME == osx ]; then qmake CONFIG+=rs_macos10.14 INCLUDEPATH+=/usr/local/opt/openssl/include/ INCLUDEPATH+=$(find /usr/local/Cellar/sqlcipher/*/include | headn -n 1) INCLUDEPATH+=$(find /usr/local/Cellar/libmicrohttpd/*/include | head -n 1) QMAKE_LIBDIR+=/usr/local/opt/openssl/lib/ QMAKE_LIBDIR+=$(find /usr/local/Cellar/libmicrohttpd/*/lib | head -n 1) QMAKE_LIBDIR+=$(find /usr/local/Cellar/sqlcipher/*/lib | head -n 1); fi
+ - >
+ if [ $TRAVIS_OS_NAME == osx ]; then
+ qmake CONFIG+=rs_macos10.14
+ INCLUDEPATH+=$(find /usr/local/Cellar/miniupnpc/*/include | head -n 1)
+ QMAKE_LIBDIR+=$(find /usr/local/Cellar/miniupnpc/*/lib/ | head -n 1)
+ INCLUDEPATH+=$(find /usr/local/Cellar/openssl*/*/include/ | head -n 1)
+ QMAKE_LIBDIR+=$(find /usr/local/Cellar/openssl*/*/lib/ | head -n 1)
+ INCLUDEPATH+=$(find /usr/local/Cellar/rapidjson/*/include | head -n 1)
+ INCLUDEPATH+=$(find /usr/local/Cellar/sqlcipher/*/include | head -n 1)
+ QMAKE_LIBDIR+=$(find /usr/local/Cellar/sqlcipher/*/lib | head -n 1);
+ fi
script:
- - if [ $TRAVIS_OS_NAME == osx ] && [ "${COVERITY_SCAN_BRANCH}" != 1 ]; then make -j4; fi
+ - if [ "${COVERITY_SCAN_BRANCH}" != 1 ]; then make -j4; fi
after_success:
- - if [ $TRAVIS_OS_NAME == osx ]; then chmod +x ./travis_makeOSXPackage.sh && ./travis_makeOSXPackage.sh ; fi
+ - if [ $TRAVIS_OS_NAME == osx ]; then build_scripts/OSX/travis_makeOSXPackage.sh ; fi
- if [ $TRAVIS_OS_NAME == linux ] && [ "${COVERITY_SCAN_BRANCH}" != 1 ]; then make -j2; fi
diff --git a/README.asciidoc b/README.asciidoc
index 2086c1bd5..c2aad3e7f 100644
--- a/README.asciidoc
+++ b/README.asciidoc
@@ -2,8 +2,7 @@
RetroShare is a decentralized, private, secure, cross-platform, communication
toolkit.
-RetroShare provides filesharing, chat, messages, forums, channels and
-more.
+RetroShare provides filesharing, chat, messages, forums, channels and more.
.Build Status
|===============================================================================
@@ -15,10 +14,14 @@ more.
== Compilation
It is very difficult to keep a comprehensive (we support many platforms) and
-updated documentation on how to build retroshare, instead we provide scripts and
-receipts that are used to create the packages for the supported platforms and
+updated documentation on how to build RetroShare, instead we provide scripts and
+recipes that are used to create the packages for the supported platforms and
more in the `build_scripts` directory of this repository.
+Those packaging receipts together with the continuous integration files
+`.travis.yml` and `appveyor.yml` are a good source of knowledge on how to
+compile RetroShare on different platforms.
+
== Using RetroShare on a headless computer with WebUI
diff --git a/RetroShare.pro b/RetroShare.pro
index 845cdd3a6..2e9b0a17f 100644
--- a/RetroShare.pro
+++ b/RetroShare.pro
@@ -16,6 +16,8 @@
# along with this program. If not, see . #
################################################################################
+CONFIG += c++11
+
!include("retroshare.pri"): error("Could not include file retroshare.pri")
TEMPLATE = subdirs
@@ -29,12 +31,6 @@ rs_jsonapi:isEmpty(JSONAPI_GENERATOR_EXE) {
libretroshare.depends += jsonapi-generator
}
-rs_webui {
- !rs_jsonapi {
- error("rs_webui requires rs_jsonapi")
- }
-}
-
SUBDIRS += libbitdht
libbitdht.file = libbitdht/src/libbitdht.pro
libretroshare.depends += openpgpsdk libbitdht
diff --git a/appveyor.yml b/appveyor.yml
index 98686b717..d74e82c77 100644
--- a/appveyor.yml
+++ b/appveyor.yml
@@ -90,8 +90,10 @@ install:
# Configuring MSys2
- set PATH=C:\msys64\usr\bin;%PATH%
- set PATH=C:\msys64\mingw32\bin;%PATH%
- - pacman --noconfirm -S mingw-w64-i686-qt5 mingw-w64-i686-miniupnpc mingw-w64-i686-sqlcipher mingw-w64-i686-libmicrohttpd mingw-w64-i686-xapian-core mingw-w64-i686-cmark
- #- pacman --noconfirm -S mingw-w64-i686-qt5-static mingw-w64-i686-miniupnpc mingw-w64-i686-sqlcipher mingw-w64-i686-libmicrohttpd
+ - >
+ pacman --noconfirm -S
+ mingw-w64-i686-qt5 mingw-w64-i686-miniupnpc mingw-w64-i686-rapidjson
+ mingw-w64-i686-sqlcipher mingw-w64-i686-xapian-core mingw-w64-i686-cmark
#- set PATH=C:\msys64\mingw32\qt5-static\bin\;%PATH%
# Configuring Qt
@@ -138,6 +140,10 @@ configuration: Release
# scripts to run before build
before_build:
- cd C:\projects\RetroShare
+ - git submodule update --init
+ - cd C:\projects\
+ - mkdir RetroShare-build
+ - cd RetroShare-build
# - find C:\ > filelist.txt
# scripts to run *after* solution is built and *before* automatic packaging occurs (web apps, NuGet packages, Azure Cloud Services)
@@ -146,15 +152,18 @@ before_package:
# to run your custom scripts instead of automatic MSBuild
build_script:
- env
- - git submodule update --init
- - qmake -Wall -spec win32-g++ "CONFIG=debug"
+ - qmake ../RetroShare -spec win32-g++ "CONFIG+=debug"
- mingw32-make -j3
# scripts to run after build
after_build:
+ - find .
+
- mkdir %RS_DEPLOY%
- - copy retroshare-service\src\retroshare-service.exe %RS_DEPLOY%\
- - copy retroshare-gui\src\retroshare.exe %RS_DEPLOY%\
+ - copy retroshare-gui\src\debug\retroshare.exe %RS_DEPLOY%\
+ - copy retroshare-service\src\debug\retroshare-service.exe %RS_DEPLOY%\
+# - copy retroshare-service\src\retroshare-service.exe %RS_DEPLOY%\
+# - copy retroshare-gui\src\retroshare.exe %RS_DEPLOY%\
## In Debug build winedeplyqt forget the non debug Qt libs
- copy C:\msys64\mingw32\bin\Qt5Svg.dll %RS_DEPLOY%\
@@ -234,24 +243,10 @@ after_build:
- copy C:\msys64\mingw32\bin\libwebpdemux*.dll %RS_DEPLOY%\
- copy C:\msys64\mingw32\bin\liblzma*.dll %RS_DEPLOY%\
-## Needed for libresapi http
- - copy C:\msys64\mingw32\bin\libmicrohttpd*.dll %RS_DEPLOY%\
- - copy C:\msys64\mingw32\bin\libgnutls*.dll %RS_DEPLOY%\
- - copy C:\msys64\mingw32\bin\libgmp*.dll %RS_DEPLOY%\
- - copy C:\msys64\mingw32\bin\libhogweed*.dll %RS_DEPLOY%\
- - copy C:\msys64\mingw32\bin\libidn2*.dll %RS_DEPLOY%\
- - copy C:\msys64\mingw32\bin\libnettle*.dll %RS_DEPLOY%\
- - copy C:\msys64\mingw32\bin\libp11-kit*.dll %RS_DEPLOY%\
- - copy C:\msys64\mingw32\bin\libtasn1*.dll %RS_DEPLOY%\
- - copy C:\msys64\mingw32\bin\libunistring*.dll %RS_DEPLOY%\
- - copy C:\msys64\mingw32\bin\libffi*.dll %RS_DEPLOY%\
-
## Needed for cmark
- copy C:\msys64\mingw32\bin\libcmark*.dll %RS_DEPLOY%\
- copy C:\msys64\mingw32\bin\libdouble-conversion*.dll %RS_DEPLOY%\
- - find C:\projects\RetroShare >> filelist.txt
-
# to disable automatic builds
#build: off
diff --git a/build_scripts/OSX/travis_makeOSXPackage.sh b/build_scripts/OSX/travis_makeOSXPackage.sh
old mode 100644
new mode 100755
diff --git a/build_scripts/Windows-msys2/WindowsMSys2_InstallGuide.md b/build_scripts/Windows-msys2/WindowsMSys2_InstallGuide.md
index c9ce0edd7..5d939d2de 100644
--- a/build_scripts/Windows-msys2/WindowsMSys2_InstallGuide.md
+++ b/build_scripts/Windows-msys2/WindowsMSys2_InstallGuide.md
@@ -47,6 +47,7 @@ Install all needed dependencies:
pacman -S mingw-w64-i686-sqlcipher
pacman -S mingw-w64-i686-qt5
pacman -S mingw32/mingw-w64-i686-cmake
+ pacman -S mingw-w64-i686-rapidjson
We're done installing MSYS2, close the shell terminal.
diff --git a/libretroshare/src/jsonapi/jsonapi.cpp b/libretroshare/src/jsonapi/jsonapi.cpp
index 3884775da..24f4fefb7 100644
--- a/libretroshare/src/jsonapi/jsonapi.cpp
+++ b/libretroshare/src/jsonapi/jsonapi.cpp
@@ -1,23 +1,23 @@
-/*******************************************************************************
- * RetroShare JSON API *
- * *
- * Copyright (C) 2018-2019 Gioacchino Mazzurco *
- * *
- * This program is free software: you can redistribute it and/or modify *
- * it under the terms of the GNU Affero General Public License version 3 as *
- * published by the Free Software Foundation. *
- * *
- * 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 Lesser 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 . *
- * *
- *******************************************************************************/
-
-#include "jsonapi.h"
+/*
+ * RetroShare JSON API
+ *
+ * Copyright (C) 2018-2019 Gioacchino Mazzurco
+ *
+ * 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, version 3.
+ *
+ * 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
+ *
+ * SPDX-FileCopyrightText: 2004-2019 RetroShare Team
+ * SPDX-License-Identifier: AGPL-3.0-only
+ */
#include
#include
@@ -26,6 +26,9 @@
#include
#include
+
+#include "jsonapi.h"
+
#include "util/rsjson.h"
#include "retroshare/rsfiles.h"
#include "util/radix64.h"
@@ -36,6 +39,7 @@
#include "util/rsurl.h"
#include "util/rstime.h"
#include "retroshare/rsevents.h"
+#include "retroshare/rsversion.h"
// Generated at compile time
#include "jsonapi-includes.inl"
@@ -644,3 +648,14 @@ void JsonApiServer::runloop()
RsInfo() << __PRETTY_FUNCTION__ << " finished!" << std::endl;
}
+
+/*static*/ void RsJsonApi::version(
+ uint32_t& major, uint32_t& minor, uint32_t& mini, std::string& extra,
+ std::string& human )
+{
+ major = RS_MAJOR_VERSION;
+ minor = RS_MINOR_VERSION;
+ mini = RS_MINI_VERSION;
+ extra = RS_EXTRA_VERSION;
+ human = RS_HUMAN_READABLE_VERSION;
+}
diff --git a/libretroshare/src/jsonapi/jsonapi.h b/libretroshare/src/jsonapi/jsonapi.h
index 9c0fa502d..6c26ceaae 100644
--- a/libretroshare/src/jsonapi/jsonapi.h
+++ b/libretroshare/src/jsonapi/jsonapi.h
@@ -1,21 +1,24 @@
-/*******************************************************************************
- * RetroShare JSON API *
- * *
- * Copyright (C) 2018-2019 Gioacchino Mazzurco *
- * *
- * This program is free software: you can redistribute it and/or modify *
- * it under the terms of the GNU Affero General Public License version 3 as *
- * published by the Free Software Foundation. *
- * *
- * 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 Lesser 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 . *
- * *
- *******************************************************************************/
+/*
+ * RetroShare JSON API
+ *
+ * Copyright (C) 2018-2019 Gioacchino Mazzurco
+ *
+ * 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, version 3.
+ *
+ * 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
+ *
+ * SPDX-FileCopyrightText: 2004-2019 RetroShare Team
+ * SPDX-License-Identifier: AGPL-3.0-only
+ */
+
#pragma once
#include
diff --git a/libretroshare/src/jsonapi/jsonapiitems.h b/libretroshare/src/jsonapi/jsonapiitems.h
index ac6ac8b25..eba871e98 100644
--- a/libretroshare/src/jsonapi/jsonapiitems.h
+++ b/libretroshare/src/jsonapi/jsonapiitems.h
@@ -1,22 +1,24 @@
-/*******************************************************************************
- * RetroShare JSON API *
- * *
- * Copyright (C) 2018-2019 Gioacchino Mazzurco *
- * *
- * 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 . *
- * *
- *******************************************************************************/
+/*
+ * RetroShare JSON API
+ *
+ * Copyright (C) 2018-2019 Gioacchino Mazzurco
+ *
+ * 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, version 3.
+ *
+ * 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
+ *
+ * SPDX-FileCopyrightText: 2004-2019 RetroShare Team
+ * SPDX-License-Identifier: AGPL-3.0-only
+ */
+
#pragma once
#include
diff --git a/libretroshare/src/rsserver/p3webui.cc b/libretroshare/src/jsonapi/p3webui.cc
similarity index 79%
rename from libretroshare/src/rsserver/p3webui.cc
rename to libretroshare/src/jsonapi/p3webui.cc
index 7daa4cd6a..60fc63ea9 100644
--- a/libretroshare/src/rsserver/p3webui.cc
+++ b/libretroshare/src/jsonapi/p3webui.cc
@@ -1,23 +1,23 @@
-/*******************************************************************************
- * libretroshare/src/rsserver: p3webui.cc *
- * *
- * libretroshare: retroshare core library *
- * *
- * Copyright 2019-2019 Cyril Soler *
- * *
- * This program is free software: you can redistribute it and/or modify *
- * it under the terms of the GNU Lesser General Public License version 3 as *
- * published by the Free Software Foundation. *
- * *
- * 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 Lesser 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 . *
- * *
- *******************************************************************************/
+/*
+ * RetroShare Web User Interface
+ *
+ * Copyright (C) 2019 Cyril Soler
+ *
+ * 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, version 3.
+ *
+ * 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
+ *
+ * SPDX-FileCopyrightText: 2004-2019 RetroShare Team
+ * SPDX-License-Identifier: AGPL-3.0-only
+ */
#include "p3webui.h"
@@ -194,5 +194,3 @@ bool p3WebUI::stop()
rsJsonApi->restart();
return true;
}
-
-
diff --git a/libretroshare/src/jsonapi/p3webui.h b/libretroshare/src/jsonapi/p3webui.h
new file mode 100644
index 000000000..b67927ab7
--- /dev/null
+++ b/libretroshare/src/jsonapi/p3webui.h
@@ -0,0 +1,47 @@
+/*
+ * RetroShare Web User Interface
+ *
+ * Copyright (C) 2019 Cyril Soler
+ *
+ * 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, version 3.
+ *
+ * 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
+ *
+ * SPDX-FileCopyrightText: 2004-2019 RetroShare Team
+ * SPDX-License-Identifier: AGPL-3.0-only
+ */
+
+#pragma once
+
+#include
+#include
+#include
+
+#include "retroshare/rswebui.h"
+#include "jsonapi/jsonapi.h"
+
+class p3WebUI: public RsWebUi, public JsonApiResourceProvider
+{
+public:
+ ~p3WebUI() override = default;
+
+ // implements RsWebUI
+
+ virtual void setHtmlFilesDirectory(const std::string& html_dir) override;
+ virtual void setUserPassword(const std::string& passwd) override;
+
+ virtual bool restart() override ;
+ virtual bool stop() override ;
+ bool isRunning() const override;
+ // implements JsonApiResourceProvider
+
+ virtual std::vector > getResources() const override;
+};
diff --git a/libretroshare/src/libretroshare.pro b/libretroshare/src/libretroshare.pro
index 0a9c75322..779558a59 100644
--- a/libretroshare/src/libretroshare.pro
+++ b/libretroshare/src/libretroshare.pro
@@ -161,8 +161,8 @@ PUBLIC_HEADERS = retroshare/rsdisc.h \
rs_webui {
PUBLIC_HEADERS += retroshare/rswebui.h
- SOURCES += rsserver/p3webui.cc
- HEADERS += rsserver/p3webui.h
+ SOURCES += jsonapi/p3webui.cc
+ HEADERS += jsonapi/p3webui.h
}
HEADERS += plugins/pluginmanager.h \
@@ -172,8 +172,6 @@ HEADERS += plugins/pluginmanager.h \
HEADERS += $$PUBLIC_HEADERS
-SOURCES *= services/rsversion.cxx
-
################################# Linux ##########################################
linux-* {
CONFIG += link_pkgconfig
diff --git a/libretroshare/src/retroshare/rsjsonapi.h b/libretroshare/src/retroshare/rsjsonapi.h
index e5c59c496..2fbad4a44 100644
--- a/libretroshare/src/retroshare/rsjsonapi.h
+++ b/libretroshare/src/retroshare/rsjsonapi.h
@@ -1,22 +1,26 @@
-/*******************************************************************************
- * libretroshare/src/retroshare: rsjsonapi.h *
- * *
- * Copyright (C) 2018-2019 Gioacchino Mazzurco *
- * Copyright (C) 2019-2019 Cyril Soler *
- * *
- * This program is free software: you can redistribute it and/or modify *
- * it under the terms of the GNU Affero General Public License version 3 as *
- * published by the Free Software Foundation. *
- * *
- * 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 Lesser 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 . *
- * *
- *******************************************************************************/
+/*
+ * RetroShare JSON API public header
+ *
+ * Copyright (C) 2018-2019 Gioacchino Mazzurco
+ * Copyright (C) 2019 Cyril Soler
+ *
+ * This program is free software: you can redistribute it and/or modify it under
+ * the terms of the GNU Lesser 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 Lesser General Public License for more
+ * details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this program. If not, see
+ *
+ * SPDX-FileCopyrightText: 2004-2019 RetroShare Team
+ * SPDX-License-Identifier: LGPL-3.0-or-later
+ */
+
#pragma once
#include