Skip to content

Commit 8edc226

Browse files
committed
Rename 'EPS' -> 'Hyper'.
1 parent 7359769 commit 8edc226

File tree

137 files changed

+2279
-1821
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

137 files changed

+2279
-1821
lines changed

.dev-setup

+2-2
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,3 @@
1-
export EPS_SETTINGS=`readlink -f settings/dev`
2-
export EPS_OP=hd-1 # run server as the 'hd-1' operator
1+
export HYPER_SETTINGS=`readlink -f settings/dev`
2+
export HYPER_OP=hd-1 # run server as the 'hd-1' operator
33

.scripts/copyright_text.txt

+2-2
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
1-
IRIS Endpoint-Server (EPS)
2-
Copyright (C) 2021-{year} The IRIS Endpoint-Server Authors (see AUTHORS.md)
1+
KIProtect Hyper
2+
Copyright (C) 2021-{year} KIProtect GmbH
33

44
This program is free software: you can redistribute it and/or modify
55
it under the terms of the GNU Affero General Public License as

.scripts/sd_setup.sh

+1-1
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ reset=--reset
55
for entry in `ls ${1}`; do
66
if [ "${entry: -5}" == ".json" ]; then
77
echo "Importing ${1}/${entry}..."
8-
EPS_SETTINGS=settings/dev/roles/hd-1 eps sd submit-records ${reset} settings/dev/directory/${entry}
8+
HYPER_SETTINGS=settings/dev/roles/hd-1 eps sd submit-records ${reset} settings/dev/directory/${entry}
99
# we only call reset on the first file
1010
reset=''
1111
fi

.scripts/testing/test-connection-abortion.sh

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
#!/bin/bash
22
while true
33
do
4-
EPS_SETTINGS=settings/dev/roles/private-proxy-eps-1 eps --level debug server run &
4+
HYPER_SETTINGS=settings/dev/roles/private-proxy-eps-1 eps --level debug server run &
55
RUNNING_PID=$!
66
sleep 0.1
77
kill ${RUNNING_PID}

Makefile

+9-9
Original file line numberDiff line numberDiff line change
@@ -4,11 +4,11 @@
44
SHELL := /bin/bash
55
VERSION ?= development
66

7-
GOFLAGS ?= $(GOFLAGS:) -ldflags "-X 'github.com/iris-connect/eps.Version=$(VERSION)'"
7+
GOFLAGS ?= $(GOFLAGS:) -ldflags "-X 'github.com/iris-connect/hyper.Version=$(VERSION)'"
88

9-
export EPS_TEST = yes
9+
export HYPER_TEST = yes
1010

11-
EPS_TEST_SETTINGS ?= "$(shell pwd)/settings/test"
11+
HYPER_TEST_SETTINGS ?= "$(shell pwd)/settings/test"
1212

1313
all: dep install
1414

@@ -22,24 +22,24 @@ install: build
2222
go install $(GOFLAGS) ./...
2323

2424
test:
25-
EPS_SETTINGS=$(EPS_TEST_SETTINGS) go test $(testargs) `go list ./...`
25+
HYPER_SETTINGS=$(HYPER_TEST_SETTINGS) go test $(testargs) `go list ./...`
2626

2727
test-races:
28-
EPS_SETTINGS=$(EPS_TEST_SETTINGS) go test -race $(testargs) `go list ./...`
28+
HYPER_SETTINGS=$(HYPER_TEST_SETTINGS) go test -race $(testargs) `go list ./...`
2929

3030
bench:
31-
EPS_SETTINGS=$(EPS_TEST_SETTINGS) go test -run=NONE -bench=. $(GOFLAGS) `go list ./... | grep -v api/`
31+
HYPER_SETTINGS=$(HYPER_TEST_SETTINGS) go test -run=NONE -bench=. $(GOFLAGS) `go list ./... | grep -v api/`
3232

3333
clean:
3434
@go clean $(GOFLAGS) -i ./...
3535

3636
copyright:
37-
python .scripts/make_copyright_headers.py
37+
python3 .scripts/make_copyright_headers.py
3838

3939
protobuf:
4040
protoc --go_out=. --go_opt=paths=source_relative \
4141
--go-grpc_out=. --go-grpc_opt=paths=source_relative \
42-
protobuf/eps.proto
42+
protobuf/hyper.proto
4343

4444
certs:
4545
rm -rf settings/dev/certs/*
@@ -55,4 +55,4 @@ sd-test-setup:
5555

5656
examples:
5757
@go build $(GOFLAGS) -tags examples ./...
58-
@go install $(GOFLAGS) -tags examples ./...
58+
@go install $(GOFLAGS) -tags examples ./...

README.md

+18-18
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,14 @@
1-
# Endpoint Server (EPS)
1+
# Hyper
22

3-
This repository contains the code of the IRIS connect endpoint server (EPS), which manages the communication between different actors in the IRIS connect ecosystem. It provides a gRPC server & client to exchange messages between different actors (`eps`), a service directory (`sd`) that provides a public registry of signed information about actors, and a TLS passthrough proxy (`proxy`) that enables actors to directly receive data from users via TLS.
3+
This repository contains the code of the Hyper mesh router & overlay network system, which provides a programmable network & communication layer for distributed systems. It provides a gRPC server & client to exchange messages between different actors (`hyper`), a service directory (`sd`) that provides a public registry of signed information about actors in the system, and a TLS passthrough proxy (`proxy`) that enables actors to directly receive data from each other and third-parties via TLS.
44

5-
Please also check out the [documentation](https://iris-connect.github.io/eps/docs/) for more detailed information. Please check the `docs` subfolder for instructions on how to build/view the documentation locally.
5+
Please also check out the [documentation](https://kiprotect.github.io/hyper/docs/) for more detailed information. Please check the `docs` subfolder for instructions on how to build/view the documentation locally.
66

77
## Getting Started
88

99
Please ensure your Golang version is recent enough (>=1.13) before you attempt to build the software.
1010

11-
To build the `eps`, `sd` and `proxy` binaries, simply run
11+
To build the `hyper`, `sd` and `proxy` binaries, simply run
1212

1313
```bash
1414
make
@@ -24,19 +24,19 @@ Please note that you need `openssl` on your system for this to work. This will g
2424

2525
Please see below for additional dependencies you might need to install for various purposes (e.g. to recompile protobuf code).
2626

27-
To build the example services (e.g. the "locations" services `eps-ls`) simply run
27+
To build the example services (e.g. the "locations" services `hyper-ls`) simply run
2828

2929
```bash
3030
make examples
3131
```
3232

3333
## Defining Settings
3434

35-
The `eps` binary will look for settings in a list of colon (`:`) separated directories as defined by the `EPS_SETTINGS` environment variable (or, if it is undefined in the `settings` subdirectory of the current directory). The development settings include an environment-based variable `EPS_OP` that allows you to use different certificates for testing. You should define these variables before running the development server:
35+
The `hyper` binary will look for settings in a list of colon (`:`) separated directories as defined by the `HYPER_SETTINGS` environment variable (or, if it is undefined in the `settings` subdirectory of the current directory). The development settings include an environment-based variable `HYPER_OP` that allows you to use different certificates for testing. You should define these variables before running the development server:
3636

3737
```bash
38-
export EPS_SETTINGS=`readlink -f settings/dev`
39-
export EPS_OP=hd-1 # run server as the 'hd-1' operator
38+
export HYPER_SETTINGS=`readlink -f settings/dev`
39+
export HYPER_OP=hd-1 # run server as the 'hd-1' operator
4040
```
4141

4242
You can also source these things from the local `.dev-setup` script, which includes everything you need to get started:
@@ -45,13 +45,13 @@ You can also source these things from the local `.dev-setup` script, which inclu
4545
source .dev-setup # load all development environment variables
4646
```
4747

48-
There are also role-specific development/test settings in the `settings/dev/roles` directory. Those can be used to set up multiple EPS servers and test the communication between them. Please have a a look at the [integration guidelines](docs/integration.md) for more information about this.
48+
There are also role-specific development/test settings in the `settings/dev/roles` directory. Those can be used to set up multiple Hyper servers and test the communication between them. Please have a a look at the [integration guidelines](docs/integration.md) for more information about this.
4949

5050
**Important: The settings parser includes support for variable replacement and many other things. But with great power comes great responsibility and attack surface, so make sure you only feed trusted YAML input to it, as it is not designed to handle untrusted or potentially malicious settings.**
5151

5252
## Running The Service Directory
5353

54-
All EPS servers rely on the service directory (SD) to discover each other and learn about permissions, certificates and other important settings. For development, you can either use a JSON-based service directory, or run the service directory API like this:
54+
All Hyper servers rely on the service directory (SD) to discover each other and learn about permissions, certificates and other important settings. For development, you can either use a JSON-based service directory, or run the service directory API like this:
5555

5656
```bash
5757
SD_SETTINGS=settings/dev/roles/sd-1 sd run
@@ -68,15 +68,15 @@ make sd-test-setup
6868

6969
This should give you a fully functional API-based service directory with certificate and service information.
7070

71-
## Running The EPS Server
71+
## Running The Hyper Server
7272

73-
To run the development EPS server simply run (from the main directory)
73+
To run the development Hyper server simply run (from the main directory)
7474

7575
```bash
76-
EPS_SETTINGS=settings/dev/roles/hd-1 eps server run
76+
HYPER_SETTINGS=settings/dev/roles/hd-1 hyper server run
7777
```
7878

79-
This will run the EPS server for the role `hd-1` (simulating a health department in the system). For this to work you need to ensure that your `GOPATH` is in your `PATH`. This will open the JSON RPC server and (depending on the settings) also a gRPC server.
79+
This will run the Hyper server for the role `hd-1` (simulating a health department in the system). For this to work you need to ensure that your `GOPATH` is in your `PATH`. This will open the JSON RPC server and (depending on the settings) also a gRPC server.
8080

8181
## Running The Proxy Servers
8282

@@ -136,16 +136,16 @@ To generate TLS certificates for testing and development you need to have `opens
136136

137137
## Deployment
138138

139-
You can easily deploy the server as a service using `systemd` or Docke. Specific documentation coming up soon.
139+
You can easily deploy the server as a service using `systemd` or Docker. Specific documentation coming up soon.
140140

141141
# Feedback
142142

143-
If you have any questions [just contact us](mailto:[email protected]).
143+
If you have any questions [just contact us](mailto:[email protected]).
144144

145145
# Participation
146146

147-
We are happy about your contribution to the project! In order to ensure compliance with the licensing conditions and the future development of the project, we require a signed contributor license agreement (CLA) for all contributions in accordance with the [Harmony standard](http://selector.harmonyagreements.org). Please sign the corresponding document for [natural persons](.clas/iris-connect-individual.pdf) or for [organizations](.clas/iris-connect-entity.pdf) and send it to [us](mailto:[email protected]).
147+
We are happy about your contribution to the project! In order to ensure compliance with the licensing conditions and the future development of the project, we require a signed contributor license agreement (CLA) for all contributions in accordance with the [Harmony standard](http://selector.harmonyagreements.org). Please sign the corresponding document for [natural persons](.clas/hyper-individual.pdf) or for [organizations](.clas/hyper-entity.pdf) and send it to [us](mailto:[email protected]).
148148

149149
## Supporting organizations
150150

151-
- Björn Steiger Stiftung SbR - https://www.steiger-stiftung.de
151+
- The software on which Hyper is based, originally named EPS (Endpoint System), was generously suppored by the Björn Steiger Stiftung SbR - https://www.steiger-stiftung.de. The source code of the system is available at https://github.com/iris-connect/eps.

SECURITY.md

+9-14
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
11
# Security Policy
22

3-
This document describes the security policy and reporting procedures for the IRIS EPS
4-
project.
3+
This document describes the security policy and reporting procedures for the Hyper project.
54

65
* [Reporting a Security Issue](#reporting-a-security-issue)
76
* [Responsible Disclosure Policy](#responsible-disclosure-policy)
@@ -10,25 +9,21 @@ project.
109
If you want to report a bug which is not security sensible, please submit an issue.
1110

1211
## Reporting a Security Issue
13-
Our team takes all security issues in IRIS seriously.
14-
If you want to report a security issue we appreciate your effort and kindly ask you to submit a responsible disclosure.
15-
Unfortunately, IRIS does not offer a bug bounty programme or other forms of monetary compensation yet.
16-
However, we plan to join a bug bounty platform like HackerOne in the long-term.
17-
Also, we can acknowledge your effort publicly in the GitHub project.
18-
Thank you for improving the security of the IRIS project!
1912

20-
Report security issues via email at [security@iris-connect.de](mailto:[email protected]?subject=GitHub%20Security%20Issue%20EPS).
13+
Our team takes all security issues in Hyper seriously. If you want to report a security issue we appreciate your effort and kindly ask you to submit a responsible disclosure. Hyper does not offer a bug bounty programme or other forms of monetary compensation yet. Also, we can acknowledge your effort publicly in the GitHub project. Thank you for improving the security of the Hyper project!
2114

22-
The IRIS team acknowledges your email within 24 hours and will further respond in detail within 48 hours, explaining the induced actions.
15+
Report security issues via email at [[email protected]](mailto:[email protected]?subject=GitHub%20Security%20Issue%20Hyper).
16+
17+
The Hyper team will try to acknowledge your email within 24 hours and will further respond in detail within 48 hours, explaining the induced actions.
2318
Our security team will keep you up to date of the progress towards fixing the vulnerability and may ask you for additional information.
2419

25-
Please report security issues in third-party dependencies to the person or team maintaining
26-
the project for this dependency.
20+
Please report security issues in third-party dependencies to the person or team maintaining the project for this dependency.
21+
22+
Please note that we will ignore **beg bounties**, i.e. vague e-mails asking for compensation in exchange for disclosing a security issue.
2723

2824
## Responsible Disclosure Policy
2925

30-
When we receive a security bug report, we will assign it to a person who handles your disclosure.
31-
This person is responsible for the following steps of the fix process:
26+
When we receive a security bug report, we will assign it to a person who handles your disclosure. This person is responsible for the following steps of the fix process:
3227

3328
* Confirm the problem and identify affected versions
3429
* Audit code for finding similar problems

channel.go

+3-3
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
1-
// IRIS Endpoint-Server (EPS)
2-
// Copyright (C) 2021-2021 The IRIS Endpoint-Server Authors (see AUTHORS.md)
1+
// KIProtect Hyper
2+
// Copyright (C) 2021-2023 KIProtect GmbH
33
//
44
// This program is free software: you can redistribute it and/or modify
55
// it under the terms of the GNU Affero General Public License as
@@ -14,7 +14,7 @@
1414
// You should have received a copy of the GNU Affero General Public License
1515
// along with this program. If not, see <https://www.gnu.org/licenses/>.
1616

17-
package eps
17+
package hyper
1818

1919
import (
2020
"fmt"

channels/channels.go

+9-9
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
1-
// IRIS Endpoint-Server (EPS)
2-
// Copyright (C) 2021-2021 The IRIS Endpoint-Server Authors (see AUTHORS.md)
1+
// KIProtect Hyper
2+
// Copyright (C) 2021-2023 KIProtect GmbH
33
//
44
// This program is free software: you can redistribute it and/or modify
55
// it under the terms of the GNU Affero General Public License as
@@ -17,35 +17,35 @@
1717
package channels
1818

1919
import (
20-
"github.com/iris-connect/eps"
20+
"github.com/kiprotect/hyper"
2121
)
2222

23-
var Channels = eps.ChannelDefinitions{
24-
"stdout": eps.ChannelDefinition{
23+
var Channels = hyper.ChannelDefinitions{
24+
"stdout": hyper.ChannelDefinition{
2525
Name: "Stdout Channel",
2626
Description: "Prints messages to stdout (just for testing and debugging)",
2727
Maker: MakeStdoutChannel,
2828
SettingsValidator: StdoutSettingsValidator,
2929
},
30-
"jsonrpc_client": eps.ChannelDefinition{
30+
"jsonrpc_client": hyper.ChannelDefinition{
3131
Name: "JSONRPC Client Channel",
3232
Description: "Creates outgoing JSONRPC connections to deliver and receive messages",
3333
Maker: MakeJSONRPCClientChannel,
3434
SettingsValidator: JSONRPCClientSettingsValidator,
3535
},
36-
"grpc_client": eps.ChannelDefinition{
36+
"grpc_client": hyper.ChannelDefinition{
3737
Name: "gRPC Client Channel",
3838
Description: "Creates outgoing gRPC connections to deliver and receive messages",
3939
Maker: MakeGRPCClientChannel,
4040
SettingsValidator: GRPCClientSettingsValidator,
4141
},
42-
"jsonrpc_server": eps.ChannelDefinition{
42+
"jsonrpc_server": hyper.ChannelDefinition{
4343
Name: "JSONRPC Server Channel",
4444
Description: "Accepts incoming JSONRPC connections to deliver and receive messages",
4545
Maker: MakeJSONRPCServerChannel,
4646
SettingsValidator: JSONRPCServerSettingsValidator,
4747
},
48-
"grpc_server": eps.ChannelDefinition{
48+
"grpc_server": hyper.ChannelDefinition{
4949
Name: "gRPC Server Channel",
5050
Description: "Accepts incoming gRPC connections to deliver and receive messages",
5151
Maker: MakeGRPCServerChannel,

0 commit comments

Comments
 (0)