Browse Source

Update the license to VNPL 1.1

VNPL 1.1 is slightly reworded to make it clear that proprietary software
interacting with Vitastor and providing some kind of service to end users isn't
a "Proxy Program" if it's not specially designed to be used with Vitastor.

For example, Windows OS running in a virtual machine stored in a Vitastor
cluster clearly isn't.
tags/v0.5.5
Vitaliy Filippov 2 months ago
parent
commit
4a2dcf7b6b
96 changed files with 124 additions and 115 deletions
  1. +11
    -6
      README.md
  2. +11
    -8
      VNPL-1.1.txt
  3. +1
    -1
      allocator.cpp
  4. +1
    -1
      allocator.h
  5. +1
    -1
      base64.cpp
  6. +1
    -1
      base64.h
  7. +1
    -1
      blockstore.cpp
  8. +1
    -1
      blockstore.h
  9. +1
    -1
      blockstore_flush.cpp
  10. +1
    -1
      blockstore_flush.h
  11. +1
    -1
      blockstore_impl.cpp
  12. +1
    -1
      blockstore_impl.h
  13. +1
    -1
      blockstore_init.cpp
  14. +1
    -1
      blockstore_init.h
  15. +1
    -1
      blockstore_journal.cpp
  16. +1
    -1
      blockstore_journal.h
  17. +1
    -1
      blockstore_open.cpp
  18. +1
    -1
      blockstore_read.cpp
  19. +1
    -1
      blockstore_rollback.cpp
  20. +1
    -1
      blockstore_stable.cpp
  21. +1
    -1
      blockstore_sync.cpp
  22. +1
    -1
      blockstore_write.cpp
  23. +1
    -1
      cluster_client.cpp
  24. +1
    -1
      cluster_client.h
  25. +7
    -6
      debian/copyright
  26. +1
    -1
      debian/install
  27. +1
    -1
      dump_journal.cpp
  28. +1
    -1
      epoll_manager.cpp
  29. +1
    -1
      epoll_manager.h
  30. +1
    -1
      etcd_state_client.cpp
  31. +1
    -1
      etcd_state_client.h
  32. +1
    -1
      fio_cluster.cpp
  33. +1
    -1
      fio_engine.cpp
  34. +1
    -1
      fio_sec_osd.cpp
  35. +1
    -1
      http_client.cpp
  36. +1
    -1
      http_client.h
  37. +1
    -1
      lambda_size.cpp
  38. +1
    -1
      malloc_or_die.h
  39. +1
    -1
      messenger.cpp
  40. +1
    -1
      messenger.h
  41. +1
    -1
      mon/PGUtil.js
  42. +1
    -1
      mon/afr.js
  43. +1
    -1
      mon/lp-optimizer.js
  44. +1
    -1
      mon/mon-main.js
  45. +1
    -1
      mon/mon.js
  46. +1
    -1
      mon/test-nonuniform.js
  47. +1
    -1
      mon/test-optimize-undersized.js
  48. +1
    -1
      mon/test-optimize.js
  49. +1
    -1
      msgr_receive.cpp
  50. +1
    -1
      msgr_send.cpp
  51. +2
    -2
      nbd_proxy.cpp
  52. +1
    -1
      object_id.h
  53. +1
    -1
      osd.cpp
  54. +1
    -1
      osd.h
  55. +1
    -1
      osd_cluster.cpp
  56. +1
    -1
      osd_flush.cpp
  57. +1
    -1
      osd_id.h
  58. +1
    -1
      osd_main.cpp
  59. +1
    -1
      osd_ops.cpp
  60. +1
    -1
      osd_ops.h
  61. +1
    -1
      osd_peering.cpp
  62. +1
    -1
      osd_peering_pg.cpp
  63. +1
    -1
      osd_peering_pg.h
  64. +1
    -1
      osd_peering_pg_test.cpp
  65. +1
    -1
      osd_primary.cpp
  66. +1
    -1
      osd_primary.h
  67. +1
    -1
      osd_primary_subops.cpp
  68. +1
    -1
      osd_rmw.cpp
  69. +1
    -1
      osd_rmw.h
  70. +1
    -1
      osd_rmw_test.cpp
  71. +1
    -1
      osd_secondary.cpp
  72. +1
    -1
      osd_test.cpp
  73. +1
    -1
      pg_states.cpp
  74. +1
    -1
      pg_states.h
  75. +1
    -1
      qemu_driver.c
  76. +1
    -1
      qemu_proxy.cpp
  77. +1
    -1
      qemu_proxy.h
  78. +1
    -1
      ringloop.cpp
  79. +1
    -1
      ringloop.h
  80. +2
    -2
      rm_inode.cpp
  81. +1
    -1
      rpm/vitastor-el7.spec
  82. +1
    -1
      rpm/vitastor-el8.spec
  83. +1
    -1
      rw_blocking.cpp
  84. +1
    -1
      rw_blocking.h
  85. +1
    -1
      stub_bench.cpp
  86. +1
    -1
      stub_osd.cpp
  87. +1
    -1
      stub_uring_osd.cpp
  88. +1
    -1
      test_allocator.cpp
  89. +1
    -1
      test_blockstore.cpp
  90. +1
    -1
      test_pattern.h
  91. +1
    -1
      test_shit.cpp
  92. +1
    -1
      timerfd_interval.cpp
  93. +1
    -1
      timerfd_interval.h
  94. +1
    -1
      timerfd_manager.cpp
  95. +1
    -1
      timerfd_manager.h
  96. +1
    -1
      xor.h

+ 11
- 6
README.md View File

@@ -421,22 +421,27 @@ Copyright (c) Vitaliy Filippov (vitalif [at] yourcmc.ru), 2019+
You can also find me in the Russian Telegram Ceph chat: https://t.me/ceph_ru

All server-side code (OSD, Monitor and so on) is licensed under the terms of
Vitastor Network Public License 1.0 (VNPL 1.0), a copyleft license based on
Vitastor Network Public License 1.1 (VNPL 1.1), a copyleft license based on
GNU GPLv3.0 with the additional "Network Interaction" clause which requires
opensourcing all programs directly or indirectly interacting with Vitastor
through a computer network ("Proxy Programs"). Proxy Programs may be made public
not only under the terms of the same license, but also under the terms of any
GPL-Compatible Free Software License, as listed by the Free Software Foundation.
through a computer network and expressly designed to be used in conjunction
with it ("Proxy Programs"). Proxy Programs may be made public not only under
the terms of the same license, but also under the terms of any GPL-Compatible
Free Software License, as listed by the Free Software Foundation.
This is a stricter copyleft license than the Affero GPL.

Please note that VNPL doesn't require you to open the code of proprietary
software running inside a VM if it's not specially designed to be used with
Vitastor.

Basically, you can't use the software in a proprietary environment to provide
its functionality to users without opensourcing all intermediary components
standing between the user and Vitastor or purchasing a commercial license
from the author 😀.

Client libraries (cluster_client and so on) are dual-licensed under the same
VNPL 1.0 and also GNU GPL 2.0 or later to allow for compatibility with GPLed
VNPL 1.1 and also GNU GPL 2.0 or later to allow for compatibility with GPLed
software like QEMU and fio.

You can find the full text of VNPL-1.0 in the file [VNPL-1.0.txt](VNPL-1.0.txt).
You can find the full text of VNPL-1.1 in the file [VNPL-1.1.txt](VNPL-1.1.txt).
GPL 2.0 is also included in this repository as [GPL-2.0.txt](GPL-2.0.txt).

VNPL-1.0.txt → VNPL-1.1.txt View File

@@ -1,7 +1,7 @@
VITASTOR NETWORK PUBLIC LICENSE
Version 1, 17 September 2020
Version 1.1, 6 February 2021

Copyright (C) 2020 Vitaliy Filippov <vitalif@yourcmc.ru>
Copyright (C) 2021 Vitaliy Filippov <vitalif@yourcmc.ru>
Everyone is permitted to copy and distribute verbatim copies
of this license document, but changing it is not allowed.

@@ -540,12 +540,15 @@ License would be to refrain entirely from conveying the Program.

13. Remote Network Interaction.

Notwithstanding any other provision of this License, if you provide
any user an opportunity to interact with the covered work directly
or indirectly through a computer network, an imitation of such network,
or an additional program (hereinafter referred to as a "Proxy Program")
that, in turn, interacts with the covered work through a computer network,
an imitation of such network, or another Proxy Program itself,
A "Proxy Program" means a separate program which is specially designed to
be used in conjunction with the covered work and interacts with it directly
or indirectly through any kind of API (application programming interfaces),
a computer network, an imitation of such network, or another Proxy Program
itself.

Notwithstanding any other provision of this License, if you provide any user
with an opportunity to interact with the covered work through a computer
network, an imitation of such network, or any number of "Proxy Programs",
you must prominently offer that user an opportunity to receive the
Corresponding Source of the covered work and all Proxy Programs from a
network server at no charge, through some standard or customary means of

+ 1
- 1
allocator.cpp View File

@@ -1,5 +1,5 @@
// Copyright (c) Vitaliy Filippov, 2019+
// License: VNPL-1.0 (see README.md for details)
// License: VNPL-1.1 (see README.md for details)

#include <stdexcept>
#include "allocator.h"


+ 1
- 1
allocator.h View File

@@ -1,5 +1,5 @@
// Copyright (c) Vitaliy Filippov, 2019+
// License: VNPL-1.0 (see README.md for details)
// License: VNPL-1.1 (see README.md for details)

#pragma once



+ 1
- 1
base64.cpp View File

@@ -1,5 +1,5 @@
// Copyright (c) Vitaliy Filippov, 2019+
// License: VNPL-1.0 (see README.md for details)
// License: VNPL-1.1 (see README.md for details)

#include "base64.h"



+ 1
- 1
base64.h View File

@@ -1,5 +1,5 @@
// Copyright (c) Vitaliy Filippov, 2019+
// License: VNPL-1.0 (see README.md for details)
// License: VNPL-1.1 (see README.md for details)

#pragma once
#include <string>


+ 1
- 1
blockstore.cpp View File

@@ -1,5 +1,5 @@
// Copyright (c) Vitaliy Filippov, 2019+
// License: VNPL-1.0 (see README.md for details)
// License: VNPL-1.1 (see README.md for details)

#include "blockstore_impl.h"



+ 1
- 1
blockstore.h View File

@@ -1,5 +1,5 @@
// Copyright (c) Vitaliy Filippov, 2019+
// License: VNPL-1.0 (see README.md for details)
// License: VNPL-1.1 (see README.md for details)

#pragma once



+ 1
- 1
blockstore_flush.cpp View File

@@ -1,5 +1,5 @@
// Copyright (c) Vitaliy Filippov, 2019+
// License: VNPL-1.0 (see README.md for details)
// License: VNPL-1.1 (see README.md for details)

#include "blockstore_impl.h"



+ 1
- 1
blockstore_flush.h View File

@@ -1,5 +1,5 @@
// Copyright (c) Vitaliy Filippov, 2019+
// License: VNPL-1.0 (see README.md for details)
// License: VNPL-1.1 (see README.md for details)

struct copy_buffer_t
{


+ 1
- 1
blockstore_impl.cpp View File

@@ -1,5 +1,5 @@
// Copyright (c) Vitaliy Filippov, 2019+
// License: VNPL-1.0 (see README.md for details)
// License: VNPL-1.1 (see README.md for details)

#include "blockstore_impl.h"



+ 1
- 1
blockstore_impl.h View File

@@ -1,5 +1,5 @@
// Copyright (c) Vitaliy Filippov, 2019+
// License: VNPL-1.0 (see README.md for details)
// License: VNPL-1.1 (see README.md for details)

#pragma once



+ 1
- 1
blockstore_init.cpp View File

@@ -1,5 +1,5 @@
// Copyright (c) Vitaliy Filippov, 2019+
// License: VNPL-1.0 (see README.md for details)
// License: VNPL-1.1 (see README.md for details)

#include "blockstore_impl.h"



+ 1
- 1
blockstore_init.h View File

@@ -1,5 +1,5 @@
// Copyright (c) Vitaliy Filippov, 2019+
// License: VNPL-1.0 (see README.md for details)
// License: VNPL-1.1 (see README.md for details)

#pragma once



+ 1
- 1
blockstore_journal.cpp View File

@@ -1,5 +1,5 @@
// Copyright (c) Vitaliy Filippov, 2019+
// License: VNPL-1.0 (see README.md for details)
// License: VNPL-1.1 (see README.md for details)

#include "blockstore_impl.h"



+ 1
- 1
blockstore_journal.h View File

@@ -1,5 +1,5 @@
// Copyright (c) Vitaliy Filippov, 2019+
// License: VNPL-1.0 (see README.md for details)
// License: VNPL-1.1 (see README.md for details)

#pragma once



+ 1
- 1
blockstore_open.cpp View File

@@ -1,5 +1,5 @@
// Copyright (c) Vitaliy Filippov, 2019+
// License: VNPL-1.0 (see README.md for details)
// License: VNPL-1.1 (see README.md for details)

#include <sys/file.h>
#include "blockstore_impl.h"


+ 1
- 1
blockstore_read.cpp View File

@@ -1,5 +1,5 @@
// Copyright (c) Vitaliy Filippov, 2019+
// License: VNPL-1.0 (see README.md for details)
// License: VNPL-1.1 (see README.md for details)

#include "blockstore_impl.h"



+ 1
- 1
blockstore_rollback.cpp View File

@@ -1,5 +1,5 @@
// Copyright (c) Vitaliy Filippov, 2019+
// License: VNPL-1.0 (see README.md for details)
// License: VNPL-1.1 (see README.md for details)

#include "blockstore_impl.h"



+ 1
- 1
blockstore_stable.cpp View File

@@ -1,5 +1,5 @@
// Copyright (c) Vitaliy Filippov, 2019+
// License: VNPL-1.0 (see README.md for details)
// License: VNPL-1.1 (see README.md for details)

#include "blockstore_impl.h"



+ 1
- 1
blockstore_sync.cpp View File

@@ -1,5 +1,5 @@
// Copyright (c) Vitaliy Filippov, 2019+
// License: VNPL-1.0 (see README.md for details)
// License: VNPL-1.1 (see README.md for details)

#include "blockstore_impl.h"



+ 1
- 1
blockstore_write.cpp View File

@@ -1,5 +1,5 @@
// Copyright (c) Vitaliy Filippov, 2019+
// License: VNPL-1.0 (see README.md for details)
// License: VNPL-1.1 (see README.md for details)

#include "blockstore_impl.h"



+ 1
- 1
cluster_client.cpp View File

@@ -1,5 +1,5 @@
// Copyright (c) Vitaliy Filippov, 2019+
// License: VNPL-1.0 or GNU GPL-2.0+ (see README.md for details)
// License: VNPL-1.1 or GNU GPL-2.0+ (see README.md for details)

#include <stdexcept>
#include "cluster_client.h"


+ 1
- 1
cluster_client.h View File

@@ -1,5 +1,5 @@
// Copyright (c) Vitaliy Filippov, 2019+
// License: VNPL-1.0 or GNU GPL-2.0+ (see README.md for details)
// License: VNPL-1.1 or GNU GPL-2.0+ (see README.md for details)

#pragma once



+ 7
- 6
debian/copyright View File

@@ -5,16 +5,17 @@ Source: https://vitastor.io

Files: *
Copyright: 2019+ Vitaliy Filippov <vitalif@yourcmc.ru>
License: Multiple licenses VNPL-1.0 and/or GPL-2.0+
License: Multiple licenses VNPL-1.1 and/or GPL-2.0+
All server-side code (OSD, Monitor and so on) is licensed under the terms of
Vitastor Network Public License 1.0 (VNPL 1.0), a copyleft license based on
Vitastor Network Public License 1.1 (VNPL 1.1), a copyleft license based on
GNU GPLv3.0 with the additional "Network Interaction" clause which requires
opensourcing all programs directly or indirectly interacting with Vitastor
through a computer network ("Proxy Programs"). Proxy Programs may be made public
not only under the terms of the same license, but also under the terms of any
GPL-Compatible Free Software License, as listed by the Free Software Foundation.
through a computer network and expressly designed to be used in conjunction
with it ("Proxy Programs"). Proxy Programs may be made public not only under
the terms of the same license, but also under the terms of any GPL-Compatible
Free Software License, as listed by the Free Software Foundation.
This is a stricter copyleft license than the Affero GPL.
.
Client libraries (cluster_client and so on) are dual-licensed under the same
VNPL 1.0 and also GNU GPL 2.0 or later to allow for compatibility with GPLed
VNPL 1.1 and also GNU GPL 2.0 or later to allow for compatibility with GPLed
software like QEMU and fio.

+ 1
- 1
debian/install View File

@@ -1,3 +1,3 @@
VNPL-1.0.txt usr/share/doc/vitastor
VNPL-1.1.txt usr/share/doc/vitastor
GPL-2.0.txt usr/share/doc/vitastor
mon usr/lib/vitastor

+ 1
- 1
dump_journal.cpp View File

@@ -1,5 +1,5 @@
// Copyright (c) Vitaliy Filippov, 2019+
// License: VNPL-1.0 (see README.md for details)
// License: VNPL-1.1 (see README.md for details)

#define _LARGEFILE64_SOURCE
#include <sys/types.h>


+ 1
- 1
epoll_manager.cpp View File

@@ -1,5 +1,5 @@
// Copyright (c) Vitaliy Filippov, 2019+
// License: VNPL-1.0 or GNU GPL-2.0+ (see README.md for details)
// License: VNPL-1.1 or GNU GPL-2.0+ (see README.md for details)

#include <sys/epoll.h>
#include <sys/poll.h>


+ 1
- 1
epoll_manager.h View File

@@ -1,5 +1,5 @@
// Copyright (c) Vitaliy Filippov, 2019+
// License: VNPL-1.0 or GNU GPL-2.0+ (see README.md for details)
// License: VNPL-1.1 or GNU GPL-2.0+ (see README.md for details)

#pragma once



+ 1
- 1
etcd_state_client.cpp View File

@@ -1,5 +1,5 @@
// Copyright (c) Vitaliy Filippov, 2019+
// License: VNPL-1.0 or GNU GPL-2.0+ (see README.md for details)
// License: VNPL-1.1 or GNU GPL-2.0+ (see README.md for details)

#include "osd_ops.h"
#include "pg_states.h"


+ 1
- 1
etcd_state_client.h View File

@@ -1,5 +1,5 @@
// Copyright (c) Vitaliy Filippov, 2019+
// License: VNPL-1.0 or GNU GPL-2.0+ (see README.md for details)
// License: VNPL-1.1 or GNU GPL-2.0+ (see README.md for details)

#pragma once



+ 1
- 1
fio_cluster.cpp View File

@@ -1,5 +1,5 @@
// Copyright (c) Vitaliy Filippov, 2019+
// License: VNPL-1.0 or GNU GPL-2.0+ (see README.md for details)
// License: VNPL-1.1 or GNU GPL-2.0+ (see README.md for details)

// FIO engine to test cluster I/O
//


+ 1
- 1
fio_engine.cpp View File

@@ -1,5 +1,5 @@
// Copyright (c) Vitaliy Filippov, 2019+
// License: VNPL-1.0 (see README.md for details)
// License: VNPL-1.1 (see README.md for details)

// FIO engine to test Blockstore
//


+ 1
- 1
fio_sec_osd.cpp View File

@@ -1,5 +1,5 @@
// Copyright (c) Vitaliy Filippov, 2019+
// License: VNPL-1.0 or GNU GPL-2.0+ (see README.md for details)
// License: VNPL-1.1 or GNU GPL-2.0+ (see README.md for details)

// FIO engine to test Blockstore through Secondary OSD interface
//


+ 1
- 1
http_client.cpp View File

@@ -1,5 +1,5 @@
// Copyright (c) Vitaliy Filippov, 2019+
// License: VNPL-1.0 or GNU GPL-2.0+ (see README.md for details)
// License: VNPL-1.1 or GNU GPL-2.0+ (see README.md for details)

#include <netinet/tcp.h>
#include <sys/epoll.h>


+ 1
- 1
http_client.h View File

@@ -1,5 +1,5 @@
// Copyright (c) Vitaliy Filippov, 2019+
// License: VNPL-1.0 or GNU GPL-2.0+ (see README.md for details)
// License: VNPL-1.1 or GNU GPL-2.0+ (see README.md for details)

#pragma once
#include <string>


+ 1
- 1
lambda_size.cpp View File

@@ -1,5 +1,5 @@
// Copyright (c) Vitaliy Filippov, 2019+
// License: VNPL-1.0 (see README.md for details)
// License: VNPL-1.1 (see README.md for details)

#include <iostream>
#include <functional>


+ 1
- 1
malloc_or_die.h View File

@@ -1,5 +1,5 @@
// Copyright (c) Vitaliy Filippov, 2019+
// License: VNPL-1.0 or GNU GPL-2.0+ (see README.md for details)
// License: VNPL-1.1 or GNU GPL-2.0+ (see README.md for details)

#pragma once



+ 1
- 1
messenger.cpp View File

@@ -1,5 +1,5 @@
// Copyright (c) Vitaliy Filippov, 2019+
// License: VNPL-1.0 or GNU GPL-2.0+ (see README.md for details)
// License: VNPL-1.1 or GNU GPL-2.0+ (see README.md for details)

#include <unistd.h>
#include <fcntl.h>


+ 1
- 1
messenger.h View File

@@ -1,5 +1,5 @@
// Copyright (c) Vitaliy Filippov, 2019+
// License: VNPL-1.0 or GNU GPL-2.0+ (see README.md for details)
// License: VNPL-1.1 or GNU GPL-2.0+ (see README.md for details)

#pragma once



+ 1
- 1
mon/PGUtil.js View File

@@ -1,5 +1,5 @@
// Copyright (c) Vitaliy Filippov, 2019+
// License: VNPL-1.0 (see README.md for details)
// License: VNPL-1.1 (see README.md for details)

module.exports = {
scale_pg_count,


+ 1
- 1
mon/afr.js View File

@@ -1,7 +1,7 @@
// Functions to calculate Annualized Failure Rate of your cluster
// if you know AFR of your drives, number of drives, expected rebalance time
// and replication factor
// License: VNPL-1.0 (see https://yourcmc.ru/git/vitalif/vitastor/src/branch/master/README.md for details) or AGPL-3.0
// License: VNPL-1.1 (see https://yourcmc.ru/git/vitalif/vitastor/src/branch/master/README.md for details) or AGPL-3.0
// Author: Vitaliy Filippov, 2020+

module.exports = {


+ 1
- 1
mon/lp-optimizer.js View File

@@ -1,5 +1,5 @@
// Copyright (c) Vitaliy Filippov, 2019+
// License: VNPL-1.0 (see README.md for details)
// License: VNPL-1.1 (see README.md for details)

// Data distribution optimizer using linear programming (lp_solve)



+ 1
- 1
mon/mon-main.js View File

@@ -1,7 +1,7 @@
#!/usr/bin/node

// Copyright (c) Vitaliy Filippov, 2019+
// License: VNPL-1.0 (see README.md for details)
// License: VNPL-1.1 (see README.md for details)

const Mon = require('./mon.js');



+ 1
- 1
mon/mon.js View File

@@ -1,5 +1,5 @@
// Copyright (c) Vitaliy Filippov, 2019+
// License: VNPL-1.0 (see README.md for details)
// License: VNPL-1.1 (see README.md for details)

const http = require('http');
const crypto = require('crypto');


+ 1
- 1
mon/test-nonuniform.js View File

@@ -1,5 +1,5 @@
// Copyright (c) Vitaliy Filippov, 2019+
// License: VNPL-1.0 (see README.md for details)
// License: VNPL-1.1 (see README.md for details)

// Interesting real-world example coming from Ceph with EC and compression enabled.
// EC parity chunks can't be compressed as efficiently as data chunks,


+ 1
- 1
mon/test-optimize-undersized.js View File

@@ -1,5 +1,5 @@
// Copyright (c) Vitaliy Filippov, 2019+
// License: VNPL-1.0 (see README.md for details)
// License: VNPL-1.1 (see README.md for details)

const LPOptimizer = require('./lp-optimizer.js');



+ 1
- 1
mon/test-optimize.js View File

@@ -1,5 +1,5 @@
// Copyright (c) Vitaliy Filippov, 2019+
// License: VNPL-1.0 (see README.md for details)
// License: VNPL-1.1 (see README.md for details)

const LPOptimizer = require('./lp-optimizer.js');



+ 1
- 1
msgr_receive.cpp View File

@@ -1,5 +1,5 @@
// Copyright (c) Vitaliy Filippov, 2019+
// License: VNPL-1.0 or GNU GPL-2.0+ (see README.md for details)
// License: VNPL-1.1 or GNU GPL-2.0+ (see README.md for details)

#include "messenger.h"



+ 1
- 1
msgr_send.cpp View File

@@ -1,5 +1,5 @@
// Copyright (c) Vitaliy Filippov, 2019+
// License: VNPL-1.0 or GNU GPL-2.0+ (see README.md for details)
// License: VNPL-1.1 or GNU GPL-2.0+ (see README.md for details)

#define _XOPEN_SOURCE
#include <limits.h>


+ 2
- 2
nbd_proxy.cpp View File

@@ -1,5 +1,5 @@
// Copyright (c) Vitaliy Filippov, 2019+
// License: VNPL-1.0 (see README.md for details)
// License: VNPL-1.1 (see README.md for details)
// Similar to qemu-nbd, but sets timeout and uses io_uring

#include <linux/nbd.h>
@@ -111,7 +111,7 @@ public:
{
printf(
"Vitastor NBD proxy\n"
"(c) Vitaliy Filippov, 2020 (VNPL-1.0)\n\n"
"(c) Vitaliy Filippov, 2020 (VNPL-1.1)\n\n"
"USAGE:\n"
" %s map --etcd_address <etcd_address> --pool <pool> --inode <inode> --size <size in bytes>\n"
" %s unmap /dev/nbd0\n"


+ 1
- 1
object_id.h View File

@@ -1,5 +1,5 @@
// Copyright (c) Vitaliy Filippov, 2019+
// License: VNPL-1.0 or GNU GPL-2.0+ (see README.md for details)
// License: VNPL-1.1 or GNU GPL-2.0+ (see README.md for details)

#pragma once



+ 1
- 1
osd.cpp View File

@@ -1,5 +1,5 @@
// Copyright (c) Vitaliy Filippov, 2019+
// License: VNPL-1.0 (see README.md for details)
// License: VNPL-1.1 (see README.md for details)

#include <sys/socket.h>
#include <sys/poll.h>


+ 1
- 1
osd.h View File

@@ -1,5 +1,5 @@
// Copyright (c) Vitaliy Filippov, 2019+
// License: VNPL-1.0 (see README.md for details)
// License: VNPL-1.1 (see README.md for details)

#pragma once



+ 1
- 1
osd_cluster.cpp View File

@@ -1,5 +1,5 @@
// Copyright (c) Vitaliy Filippov, 2019+
// License: VNPL-1.0 (see README.md for details)
// License: VNPL-1.1 (see README.md for details)

#include "osd.h"
#include "base64.h"


+ 1
- 1
osd_flush.cpp View File

@@ -1,5 +1,5 @@
// Copyright (c) Vitaliy Filippov, 2019+
// License: VNPL-1.0 (see README.md for details)
// License: VNPL-1.1 (see README.md for details)

#include "osd.h"



+ 1
- 1
osd_id.h View File

@@ -1,5 +1,5 @@
// Copyright (c) Vitaliy Filippov, 2019+
// License: VNPL-1.0 or GNU GPL-2.0+ (see README.md for details)
// License: VNPL-1.1 or GNU GPL-2.0+ (see README.md for details)

#pragma once



+ 1
- 1
osd_main.cpp View File

@@ -1,5 +1,5 @@
// Copyright (c) Vitaliy Filippov, 2019+
// License: VNPL-1.0 (see README.md for details)
// License: VNPL-1.1 (see README.md for details)

#include "osd.h"



+ 1
- 1
osd_ops.cpp View File

@@ -1,5 +1,5 @@
// Copyright (c) Vitaliy Filippov, 2019+
// License: VNPL-1.0 or GNU GPL-2.0+ (see README.md for details)
// License: VNPL-1.1 or GNU GPL-2.0+ (see README.md for details)

#include "osd_ops.h"



+ 1
- 1
osd_ops.h View File

@@ -1,5 +1,5 @@
// Copyright (c) Vitaliy Filippov, 2019+
// License: VNPL-1.0 or GNU GPL-2.0+ (see README.md for details)
// License: VNPL-1.1 or GNU GPL-2.0+ (see README.md for details)

#pragma once



+ 1
- 1
osd_peering.cpp View File

@@ -1,5 +1,5 @@
// Copyright (c) Vitaliy Filippov, 2019+
// License: VNPL-1.0 (see README.md for details)
// License: VNPL-1.1 (see README.md for details)

#include <netinet/tcp.h>
#include <sys/epoll.h>


+ 1
- 1
osd_peering_pg.cpp View File

@@ -1,5 +1,5 @@
// Copyright (c) Vitaliy Filippov, 2019+
// License: VNPL-1.0 (see README.md for details)
// License: VNPL-1.1 (see README.md for details)

#include <unordered_map>
#include "osd_peering_pg.h"


+ 1
- 1
osd_peering_pg.h View File

@@ -1,5 +1,5 @@
// Copyright (c) Vitaliy Filippov, 2019+
// License: VNPL-1.0 (see README.md for details)
// License: VNPL-1.1 (see README.md for details)

#include <map>
#include <vector>


+ 1
- 1
osd_peering_pg_test.cpp View File

@@ -1,5 +1,5 @@
// Copyright (c) Vitaliy Filippov, 2019+
// License: VNPL-1.0 (see README.md for details)
// License: VNPL-1.1 (see README.md for details)

#define _LARGEFILE64_SOURCE



+ 1
- 1
osd_primary.cpp View File

@@ -1,5 +1,5 @@
// Copyright (c) Vitaliy Filippov, 2019+
// License: VNPL-1.0 (see README.md for details)
// License: VNPL-1.1 (see README.md for details)

#include "osd_primary.h"



+ 1
- 1
osd_primary.h View File

@@ -1,5 +1,5 @@
// Copyright (c) Vitaliy Filippov, 2019+
// License: VNPL-1.0 (see README.md for details)
// License: VNPL-1.1 (see README.md for details)

#pragma once



+ 1
- 1
osd_primary_subops.cpp View File

@@ -1,5 +1,5 @@
// Copyright (c) Vitaliy Filippov, 2019+
// License: VNPL-1.0 (see README.md for details)
// License: VNPL-1.1 (see README.md for details)

#include "osd_primary.h"



+ 1
- 1
osd_rmw.cpp View File

@@ -1,5 +1,5 @@
// Copyright (c) Vitaliy Filippov, 2019+
// License: VNPL-1.0 (see README.md for details)
// License: VNPL-1.1 (see README.md for details)

#include <stdexcept>
#include <string.h>


+ 1
- 1
osd_rmw.h View File

@@ -1,5 +1,5 @@
// Copyright (c) Vitaliy Filippov, 2019+
// License: VNPL-1.0 (see README.md for details)
// License: VNPL-1.1 (see README.md for details)

#pragma once



+ 1
- 1
osd_rmw_test.cpp View File

@@ -1,5 +1,5 @@
// Copyright (c) Vitaliy Filippov, 2019+
// License: VNPL-1.0 (see README.md for details)
// License: VNPL-1.1 (see README.md for details)

#define RMW_DEBUG



+ 1
- 1
osd_secondary.cpp View File

@@ -1,5 +1,5 @@
// Copyright (c) Vitaliy Filippov, 2019+
// License: VNPL-1.0 (see README.md for details)
// License: VNPL-1.1 (see README.md for details)

#include "osd.h"



+ 1
- 1
osd_test.cpp View File

@@ -1,5 +1,5 @@
// Copyright (c) Vitaliy Filippov, 2019+
// License: VNPL-1.0 (see README.md for details)
// License: VNPL-1.1 (see README.md for details)

#include <sys/types.h>
#include <sys/socket.h>


+ 1
- 1
pg_states.cpp View File

@@ -1,5 +1,5 @@
// Copyright (c) Vitaliy Filippov, 2019+
// License: VNPL-1.0 or GNU GPL-2.0+ (see README.md for details)
// License: VNPL-1.1 or GNU GPL-2.0+ (see README.md for details)

#include "pg_states.h"



+ 1
- 1
pg_states.h View File

@@ -1,5 +1,5 @@
// Copyright (c) Vitaliy Filippov, 2019+
// License: VNPL-1.0 or GNU GPL-2.0+ (see README.md for details)
// License: VNPL-1.1 or GNU GPL-2.0+ (see README.md for details)

#pragma once



+ 1
- 1
qemu_driver.c View File

@@ -1,5 +1,5 @@
// Copyright (c) Vitaliy Filippov, 2019+
// License: VNPL-1.0 or GNU GPL-2.0+ (see README.md for details)
// License: VNPL-1.1 or GNU GPL-2.0+ (see README.md for details)

// QEMU block driver



+ 1
- 1
qemu_proxy.cpp View File

@@ -1,5 +1,5 @@
// Copyright (c) Vitaliy Filippov, 2019+
// License: VNPL-1.0 or GNU GPL-2.0+ (see README.md for details)
// License: VNPL-1.1 or GNU GPL-2.0+ (see README.md for details)

// C-C++ proxy for the QEMU driver
// (QEMU headers don't compile with g++)


+ 1
- 1
qemu_proxy.h View File

@@ -1,5 +1,5 @@
// Copyright (c) Vitaliy Filippov, 2019+
// License: VNPL-1.0 or GNU GPL-2.0+ (see README.md for details)
// License: VNPL-1.1 or GNU GPL-2.0+ (see README.md for details)

#ifndef VITASTOR_QEMU_PROXY_H
#define VITASTOR_QEMU_PROXY_H


+ 1
- 1
ringloop.cpp View File

@@ -1,5 +1,5 @@
// Copyright (c) Vitaliy Filippov, 2019+
// License: VNPL-1.0 or GNU GPL-2.0+ (see README.md for details)
// License: VNPL-1.1 or GNU GPL-2.0+ (see README.md for details)

#include <stdlib.h>



+ 1
- 1
ringloop.h View File

@@ -1,5 +1,5 @@
// Copyright (c) Vitaliy Filippov, 2019+
// License: VNPL-1.0 or GNU GPL-2.0+ (see README.md for details)
// License: VNPL-1.1 or GNU GPL-2.0+ (see README.md for details)

#pragma once



+ 2
- 2
rm_inode.cpp View File

@@ -1,5 +1,5 @@
// Copyright (c) Vitaliy Filippov, 2019+
// License: VNPL-1.0 (see README.md for details)
// License: VNPL-1.1 (see README.md for details)

/**
* Inode removal tool
@@ -85,7 +85,7 @@ public:
{
printf(
"Vitastor inode removal tool\n"
"(c) Vitaliy Filippov, 2020 (VNPL-1.0)\n\n"
"(c) Vitaliy Filippov, 2020 (VNPL-1.1)\n\n"
"USAGE:\n"
" %s --etcd_address <etcd_address> --pool <pool> --inode <inode> [--wait-list]\n",
exe_name


+ 1
- 1
rpm/vitastor-el7.spec View File

@@ -3,7 +3,7 @@ Version: 0.5.4
Release: 2%{?dist}
Summary: Vitastor, a fast software-defined clustered block storage

License: Vitastor Network Public License 1.0
License: Vitastor Network Public License 1.1
URL: https://vitastor.io/
Source0: vitastor-0.5.4.el7.tar.gz



+ 1
- 1
rpm/vitastor-el8.spec View File

@@ -3,7 +3,7 @@ Version: 0.5.4
Release: 2%{?dist}
Summary: Vitastor, a fast software-defined clustered block storage

License: Vitastor Network Public License 1.0
License: Vitastor Network Public License 1.1
URL: https://vitastor.io/
Source0: vitastor-0.5.4.el8.tar.gz



+ 1
- 1
rw_blocking.cpp View File

@@ -1,5 +1,5 @@
// Copyright (c) Vitaliy Filippov, 2019+
// License: VNPL-1.0 or GNU GPL-2.0+ (see README.md for details)
// License: VNPL-1.1 or GNU GPL-2.0+ (see README.md for details)

#include <errno.h>
#include <stdlib.h>


+ 1
- 1
rw_blocking.h View File

@@ -1,5 +1,5 @@
// Copyright (c) Vitaliy Filippov, 2019+
// License: VNPL-1.0 or GNU GPL-2.0+ (see README.md for details)
// License: VNPL-1.1 or GNU GPL-2.0+ (see README.md for details)

#pragma once



+ 1
- 1
stub_bench.cpp View File

@@ -1,5 +1,5 @@
// Copyright (c) Vitaliy Filippov, 2019+
// License: VNPL-1.0 or GNU GPL-2.0+ (see README.md for details)
// License: VNPL-1.1 or GNU GPL-2.0+ (see README.md for details)

/**
* Stub benchmarker


+ 1
- 1
stub_osd.cpp View File

@@ -1,5 +1,5 @@
// Copyright (c) Vitaliy Filippov, 2019+
// License: VNPL-1.0 or GNU GPL-2.0+ (see README.md for details)
// License: VNPL-1.1 or GNU GPL-2.0+ (see README.md for details)

/**
* Stub "OSD" to test & compare network performance with sync read/write and io_uring


+ 1
- 1
stub_uring_osd.cpp View File

@@ -1,5 +1,5 @@
// Copyright (c) Vitaliy Filippov, 2019+
// License: VNPL-1.0 or GNU GPL-2.0+ (see README.md for details)
// License: VNPL-1.1 or GNU GPL-2.0+ (see README.md for details)

/**
* Stub "OSD" implemented on top of osd_messenger to test & compare


+ 1
- 1
test_allocator.cpp View File

@@ -1,5 +1,5 @@
// Copyright (c) Vitaliy Filippov, 2019+
// License: VNPL-1.0 (see README.md for details)
// License: VNPL-1.1 (see README.md for details)

#include <stdio.h>
#include "allocator.h"


+ 1
- 1
test_blockstore.cpp View File

@@ -1,5 +1,5 @@
// Copyright (c) Vitaliy Filippov, 2019+
// License: VNPL-1.0 (see README.md for details)
// License: VNPL-1.1 (see README.md for details)

#include <malloc.h>
#include "timerfd_interval.h"


+ 1
- 1
test_pattern.h View File

@@ -1,5 +1,5 @@
// Copyright (c) Vitaliy Filippov, 2019+
// License: VNPL-1.0 (see README.md for details)
// License: VNPL-1.1 (see README.md for details)

#pragma once



+ 1
- 1
test_shit.cpp View File

@@ -1,5 +1,5 @@
// Copyright (c) Vitaliy Filippov, 2019+
// License: VNPL-1.0 (see README.md for details)
// License: VNPL-1.1 (see README.md for details)

#define _LARGEFILE64_SOURCE
#include <sys/types.h>


+ 1
- 1
timerfd_interval.cpp View File

@@ -1,5 +1,5 @@
// Copyright (c) Vitaliy Filippov, 2019+
// License: VNPL-1.0 or GNU GPL-2.0+ (see README.md for details)
// License: VNPL-1.1 or GNU GPL-2.0+ (see README.md for details)

#include <sys/timerfd.h>
#include <sys/poll.h>


+ 1
- 1
timerfd_interval.h View File

@@ -1,5 +1,5 @@
// Copyright (c) Vitaliy Filippov, 2019+
// License: VNPL-1.0 or GNU GPL-2.0+ (see README.md for details)
// License: VNPL-1.1 or GNU GPL-2.0+ (see README.md for details)

#pragma once



+ 1
- 1
timerfd_manager.cpp View File

@@ -1,5 +1,5 @@
// Copyright (c) Vitaliy Filippov, 2019+
// License: VNPL-1.0 or GNU GPL-2.0+ (see README.md for details)
// License: VNPL-1.1 or GNU GPL-2.0+ (see README.md for details)

#include <sys/timerfd.h>
#include <sys/poll.h>


+ 1
- 1
timerfd_manager.h View File

@@ -1,5 +1,5 @@
// Copyright (c) Vitaliy Filippov, 2019+
// License: VNPL-1.0 or GNU GPL-2.0+ (see README.md for details)
// License: VNPL-1.1 or GNU GPL-2.0+ (see README.md for details)

#pragma once



+ 1
- 1
xor.h View File

@@ -1,5 +1,5 @@
// Copyright (c) Vitaliy Filippov, 2019+
// License: VNPL-1.0 or GNU GPL-2.0+ (see README.md for details)
// License: VNPL-1.1 or GNU GPL-2.0+ (see README.md for details)

#pragma once



Loading…
Cancel
Save