Skip to content

Commit

Permalink
Fixes skupperproject#1616: Removed http1, http2 adaptors and adaptor …
Browse files Browse the repository at this point in the history
…buffers. (skupperproject#1617)

* Fixes skupperproject#1616:  Removed http1, http2 adaptors and adaptor buffers.

* Code review: Put back accidentally removed tests
  • Loading branch information
ganeshmurthy authored Oct 3, 2024
1 parent 9da80bd commit 4fbde57
Show file tree
Hide file tree
Showing 45 changed files with 141 additions and 21,324 deletions.
2 changes: 1 addition & 1 deletion .github/workflows/build.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -574,7 +574,7 @@ jobs:
# covType: unit
# runtimeCheck: OFF
# protonGitRef: 0.39.0
# routerCTestExtraArgs: "-R 'unittests|unit_tests|threaded_timer_test|adaptor_buffer_test|router_engine_test|management_test|router_policy_test|test_command'"
# routerCTestExtraArgs: "-R 'unittests|unit_tests|threaded_timer_test|router_engine_test|management_test|router_policy_test|test_command'"
# shard: 1
# shards: 1
# # clang
Expand Down
1 change: 0 additions & 1 deletion include/qpid/dispatch/router_core.h
Original file line number Diff line number Diff line change
Expand Up @@ -279,7 +279,6 @@ typedef enum {
QD_ROUTER_CONFIG_ADDRESS,
QD_ROUTER_CONFIG_AUTO_LINK,
QD_ROUTER_CONNECTION,
QD_ROUTER_HTTP_REQUEST_INFO,
QD_ROUTER_ROUTER_METRICS,
QD_ROUTER_LINK,
QD_ROUTER_ADDRESS,
Expand Down
202 changes: 0 additions & 202 deletions python/skupper_router/management/skrouter.json
Original file line number Diff line number Diff line change
Expand Up @@ -1061,208 +1061,6 @@
}
},

"httpListener": {
"description": "Ingress HTTP bridge.",
"extends": "configurationEntity",
"operations": ["CREATE", "DELETE"],
"attributes": {
"host": {
"description":"A host name, IPV4 or IPV6 literal, or the empty string. The empty string listens on all local addresses. A host name listens on all addresses associated with the name. An IPV6 literal address (or wildcard '[::]') listens only for IPV6. An IPV4 literal address (or wildcard '0.0.0.0') listens only for IPV4.",
"type": "string",
"default": "0.0.0.0",
"create": true
},
"address": {
"description":"Address of this http bridge",
"type": "string",
"create": true
},
"port": {
"description": "Port number or symbolic service name. If '0', the router shall assign an ephemeral port to the listener and log the port number with a log of the form 'SERVER (info) Listening on <host>:<assigned-port> (<listener-name>)'",
"type": "string",
"create": true
},
"backlog": {
"description": "Sets the value of the backlog parameter in call to listen(). This controls the maximum queue depth the OS will use for some stages of TCP connection creation. Value should be integer >= 0. If 0, the value will be set to the upper limit allowed by the OS. Otherwise it will be the value provided. Higher values significantly improve connections-per-second.",
"type": "integer",
"default": 0,
"create": true,
"required": false
},
"siteId": {
"type": "string",
"required": false,
"description": "Used to identify where request is handled.",
"create": true
},
"sslProfile": {
"type": "string",
"required": false,
"description": "Name of the sslProfile.",
"create": true
},
"authenticatePeer": {
"type": "boolean",
"default": false,
"description": "yes: Require the peer's identity to be authenticated; no: Do not require any authentication.",
"create": true
},
"protocolVersion": {
"description": "The version of the HTTP protocol supported by this listener.",
"type": [
"HTTP1",
"HTTP2"
],
"default": "HTTP1",
"required": false,
"create": true
},
"aggregation": {
"type": [
"multipart",
"json"
],
"required": false,
"description": "Aggregation mode for responses when used in conjunction with multicast address.",
"create": true
},
"eventChannel": {
"type": "boolean",
"required": false,
"description": "Enables restricted event mode where no responses are sent to request and only post is allowed",
"create": true
},
"operStatus": {
"type": ["up", "down"],
"description": "The operational status of the HTTP socket listener: up - the service is active and incoming connections are permitted; down - the service is not active and incoming connection attempts will be refused.",
"create": false
}
}
},

"httpConnector": {
"description": "Egress HTTP bridge.",
"extends": "configurationEntity",
"operations": ["CREATE", "DELETE"],
"attributes": {
"address": {
"description":"Address of this bridge",
"type": "string",
"create": true
},
"host": {
"description":"IP address: ipv4 or ipv6 literal or a host name",
"type": "string",
"default": "127.0.0.1",
"create": true
},
"siteId": {
"type": "string",
"required": false,
"description": "Used to identify where request originates.",
"create": true
},
"port": {
"description": "Port number or symbolic service name.",
"type": "string",
"create": true

},
"sslProfile": {
"type": "string",
"required": false,
"description": "Name of the sslProfile.",
"create": true
},
"protocolVersion": {
"description": "The version of the HTTP protocol supported by this connector.",
"type": [
"HTTP1",
"HTTP2"
],
"default": "HTTP1",
"required": false,
"create": true
},
"aggregation": {
"type": [
"multipart",
"json"
],
"required": false,
"description": "Aggregation mode for responses when used in conjunction with multicast address.",
"create": true
},
"eventChannel": {
"type": "boolean",
"required": false,
"description": "Enables restricted event mode where no responses are sent to request and only post is allowed",
"create": true
},
"verifyHostname": {
"type": "boolean",
"default": true,
"description": "yes: Ensures that when initiating a connection (as a client) the host name in the URL to which this connector connects to matches the host name in the digital certificate that the peer sends back as part of the TLS connection; no: Does not perform host name verification",
"deprecationName": "verifyHostName",
"create": true
},
"hostOverride": {
"type": "string",
"required": false,
"description": "Used to override the value of the Host header sent to the client.",
"create": true
}
}
},

"httpRequestInfo": {
"description": "Statistics for requests to/from httpListener and httpConnector instances",
"extends": "operationalEntity",
"attributes": {
"address": {
"description": "the router address over which the request was forwarded.",
"type": "string"
},
"host": {
"description": "IP address and port number of peer (i.e. the client for direction=in and the server for direction=out) in the form addr:port.",
"type": "string"
},
"site": {
"description": "The site identifier of the router in which the request originated (for direction=out) or was handled (for direction=in).",
"type": "string"
},
"direction": {
"description": "Direction of connection establishment in or out of the router.",
"type": ["in", "out"]
},
"requests": {
"type": "integer",
"graph": true,
"description": "The cumulative number of requests made."
},
"bytesIn": {
"type": "integer",
"graph": true,
"description": "The cumulative number of bytes sent in requests."
},
"bytesOut": {
"type": "integer",
"graph": true,
"description": "The cumulative number of bytes sent in responses."
},
"maxLatency": {
"type": "integer",
"graph": true,
"description": "The maximum latency seen for any request represented by this instance."
},
"details": {
"description": "Details of method and statuses for requests.",
"type": "map"
}
}
},


"tcpListener": {
"description": "Ingress TCP bridge.",
"extends": "configurationEntity",
Expand Down
4 changes: 0 additions & 4 deletions python/skupper_router_internal/dispatch.py
Original file line number Diff line number Diff line change
Expand Up @@ -110,12 +110,8 @@ def __init__(self) -> None:
self._prototype(self.qd_dispatch_configure_connector, c_void_p, [self.qd_dispatch_p, py_object])
self._prototype(self.qd_dispatch_configure_tcp_listener, c_void_p, [self.qd_dispatch_p, py_object])
self._prototype(self.qd_dispatch_configure_tcp_connector, c_void_p, [self.qd_dispatch_p, py_object])
self._prototype(self.qd_dispatch_configure_http_listener, c_void_p, [self.qd_dispatch_p, py_object])
self._prototype(self.qd_dispatch_configure_http_connector, c_void_p, [self.qd_dispatch_p, py_object])
self._prototype(self.qd_dispatch_delete_tcp_listener, None, [self.qd_dispatch_p, c_void_p])
self._prototype(self.qd_dispatch_delete_tcp_connector, None, [self.qd_dispatch_p, c_void_p])
self._prototype(self.qd_dispatch_delete_http_listener, None, [self.qd_dispatch_p, c_void_p])
self._prototype(self.qd_dispatch_delete_http_connector, None, [self.qd_dispatch_p, c_void_p])
self._prototype(self.qd_connection_manager_delete_listener, None, [self.qd_dispatch_p, c_void_p])
self._prototype(self.qd_connection_manager_delete_connector, None, [self.qd_dispatch_p, c_void_p])

Expand Down
34 changes: 0 additions & 34 deletions python/skupper_router_internal/management/agent.py
Original file line number Diff line number Diff line change
Expand Up @@ -537,23 +537,6 @@ def __str__(self):
return super(AllocatorEntity, self).__str__().replace("Entity(", "AllocatorEntity(")


class HttpListenerEntity(EntityAdapter):
def create(self):
http_listener = self._qd.qd_dispatch_configure_http_listener(self._dispatch, self)
if http_listener is None:
raise ValidationError("Invalid httpListener configuration: see logs for details.")
return http_listener

def _identifier(self):
return _host_port_name_identifier(self)

def __str__(self):
return super(HttpListenerEntity, self).__str__().replace("Entity(", "HttpListenerEntity(")

def _delete(self):
self._qd.qd_dispatch_delete_http_listener(self._dispatch, self._implementations[0].key)


class TcpListenerEntity(EntityAdapter):
def create(self):
config_listener = self._qd.qd_dispatch_configure_tcp_listener(self._dispatch, self)
Expand Down Expand Up @@ -588,23 +571,6 @@ def _delete(self):
self._qd.qd_dispatch_delete_tcp_connector(self._dispatch, self._implementations[0].key)


class HttpConnectorEntity(EntityAdapter):
def create(self):
http_connector = self._qd.qd_dispatch_configure_http_connector(self._dispatch, self)
if http_connector is None:
raise ValidationError("Invalid httpConnector configuration: see logs for details.")
return http_connector

def _identifier(self):
return _host_port_name_identifier(self)

def __str__(self):
return super(HttpConnectorEntity, self).__str__().replace("Entity(", "HttpConnectorEntity(")

def _delete(self):
self._qd.qd_dispatch_delete_http_connector(self._dispatch, self._implementations[0].key)


class EntityCache:
"""
Searchable cache of entities, can be refreshed from implementation objects.
Expand Down
2 changes: 1 addition & 1 deletion python/skupper_router_internal/management/config.py
Original file line number Diff line number Diff line change
Expand Up @@ -327,7 +327,7 @@ def configure(attributes):
for t in ("sslProfile",
"router.config.address", "router.config.autoLink",
"router.config.exchange", "router.config.binding",
"vhost", "httpListener", "httpConnector", "tcpListener", "tcpConnector"):
"vhost", "tcpListener", "tcpConnector"):
for a in config.by_type(t):
configure(a)
if t == "sslProfile":
Expand Down
64 changes: 0 additions & 64 deletions scripts/gha_tools.py

This file was deleted.

9 changes: 0 additions & 9 deletions src/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -38,16 +38,7 @@ add_custom_command (

# Build the skupper-router library.
set(qpid_dispatch_SOURCES
adaptors/legacy_tls.c
adaptors/reference_adaptor.c
adaptors/adaptor_buffer.c
adaptors/http_common.c
adaptors/http1/http1_codec.c
adaptors/http1/http1_adaptor.c
adaptors/http1/http1_client.c
adaptors/http1/http1_server.c
adaptors/http1/http1_request_info.c
adaptors/http2/http2_adaptor.c
adaptors/adaptor_common.c
adaptors/tcp/tcp_adaptor.c
adaptors/test_adaptor.c
Expand Down
Loading

0 comments on commit 4fbde57

Please sign in to comment.