naeural-client 2.6.26__py3-none-any.whl → 2.6.27__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- naeural_client/_ver.py +1 -1
- naeural_client/bc/base.py +71 -4
- {naeural_client-2.6.26.dist-info → naeural_client-2.6.27.dist-info}/METADATA +1 -1
- {naeural_client-2.6.26.dist-info → naeural_client-2.6.27.dist-info}/RECORD +7 -7
- {naeural_client-2.6.26.dist-info → naeural_client-2.6.27.dist-info}/WHEEL +0 -0
- {naeural_client-2.6.26.dist-info → naeural_client-2.6.27.dist-info}/entry_points.txt +0 -0
- {naeural_client-2.6.26.dist-info → naeural_client-2.6.27.dist-info}/licenses/LICENSE +0 -0
naeural_client/_ver.py
CHANGED
naeural_client/bc/base.py
CHANGED
@@ -542,10 +542,63 @@ class BaseBlockEngine:
|
|
542
542
|
except:
|
543
543
|
result = False
|
544
544
|
return result
|
545
|
-
|
546
545
|
|
547
|
-
|
546
|
+
|
547
|
+
def add_address_to_allowed(self, address : any):
|
548
|
+
"""
|
549
|
+
Adds a new address or a list of addresses to the allowed list
|
550
|
+
"""
|
551
|
+
changed = False
|
552
|
+
if isinstance(address, str):
|
553
|
+
address = [address]
|
554
|
+
#endif
|
555
|
+
if isinstance(address, list) and len(address) > 0:
|
556
|
+
# self.P(f"Adding addresses to the allowed list:\n{address}", verbosity=1)
|
557
|
+
# now check addresses
|
558
|
+
lst_addresses = []
|
559
|
+
lst_names = []
|
560
|
+
for addr in address:
|
561
|
+
addr = addr.strip()
|
562
|
+
parts = addr.split()
|
563
|
+
if len(parts) == 0:
|
564
|
+
continue
|
565
|
+
addr = parts[0]
|
566
|
+
name = parts[1] if len(parts) > 1 else ""
|
567
|
+
if not self.address_is_valid(addr):
|
568
|
+
self.P("WARNING: address <{}> is not valid. Ignoring.".format(addr), color='r')
|
569
|
+
else:
|
570
|
+
lst_addresses.append(self.maybe_add_prefix(addr))
|
571
|
+
lst_names.append(name)
|
572
|
+
#endif
|
573
|
+
#endfor
|
574
|
+
if len(lst_addresses) > 0:
|
575
|
+
existing_addrs, existing_names = self._load_and_maybe_create_allowed(return_names=True)
|
576
|
+
existing_addrs = [self.maybe_add_prefix(x) for x in existing_addrs]
|
577
|
+
for addr, name in zip(lst_addresses, lst_names):
|
578
|
+
if addr not in existing_addrs:
|
579
|
+
changed = True
|
580
|
+
existing_addrs.append(addr)
|
581
|
+
existing_names.append(name)
|
582
|
+
self.P("Address <{}{}> added to the allowed list.".format(addr, name), color='g')
|
583
|
+
#endif new address
|
584
|
+
#endfor
|
585
|
+
if changed:
|
586
|
+
with self._whitelist_lock:
|
587
|
+
fn = self._get_allowed_file()
|
588
|
+
with open(fn, 'wt') as fh:
|
589
|
+
for addr, name in zip(existing_addrs, existing_names):
|
590
|
+
fh.write("{}{}\n".format(addr, (" " + name) if len(name)>0 else ""))
|
591
|
+
#endfor each address in modified whitelist
|
592
|
+
#endwith open file
|
593
|
+
#endwith lock
|
594
|
+
#endif changed
|
595
|
+
#endif addresses received ok
|
596
|
+
return changed
|
597
|
+
|
598
|
+
|
599
|
+
def _load_and_maybe_create_allowed(self, return_names=False, return_prefix=False):
|
548
600
|
lst_final = []
|
601
|
+
lst_names = []
|
549
602
|
with self._whitelist_lock:
|
550
603
|
try:
|
551
604
|
fn = self._get_allowed_file()
|
@@ -563,16 +616,21 @@ class BaseBlockEngine:
|
|
563
616
|
lst_lines = []
|
564
617
|
errors = False
|
565
618
|
for allowed_tuple in lst_allowed:
|
566
|
-
|
619
|
+
parts = allowed_tuple.split()
|
620
|
+
if len(parts) == 0:
|
621
|
+
continue
|
622
|
+
allowed = parts[0]
|
567
623
|
allowed = self._remove_prefix(allowed)
|
624
|
+
name = parts[1] if len(parts) > 1 else ""
|
568
625
|
if not self.address_is_valid(allowed):
|
569
626
|
self.P("WARNING: address <{}> is not valid. Removing {} from allowed list.".format(
|
570
627
|
allowed, allowed_tuple), color='r'
|
571
628
|
)
|
572
629
|
errors = True
|
573
630
|
else:
|
574
|
-
lst_final.append(allowed)
|
631
|
+
lst_final.append(self.maybe_add_prefix(allowed))
|
575
632
|
lst_lines.append(allowed_tuple)
|
633
|
+
lst_names.append(name)
|
576
634
|
if errors:
|
577
635
|
with open(fn, 'wt') as fh:
|
578
636
|
for line in lst_lines:
|
@@ -581,6 +639,8 @@ class BaseBlockEngine:
|
|
581
639
|
self.P(f"ERROR: failed to load the allowed list of addresses: {exc}", color='r')
|
582
640
|
#endtry
|
583
641
|
#endwith
|
642
|
+
if return_names:
|
643
|
+
return lst_final, lst_names
|
584
644
|
return lst_final
|
585
645
|
|
586
646
|
|
@@ -900,6 +960,13 @@ class BaseBlockEngine:
|
|
900
960
|
"""Returns the allowed command senders for the current node"""
|
901
961
|
return self.allowed_list
|
902
962
|
|
963
|
+
@property
|
964
|
+
def whitelist_with_names(self):
|
965
|
+
"""
|
966
|
+
Returns a tuple with the allowed list (prefixed) and a list with names
|
967
|
+
"""
|
968
|
+
return self._load_and_maybe_create_allowed(return_names=True, return_prefix=True)
|
969
|
+
|
903
970
|
|
904
971
|
def maybe_remove_prefix(self, address):
|
905
972
|
"""
|
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.4
|
2
2
|
Name: naeural_client
|
3
|
-
Version: 2.6.
|
3
|
+
Version: 2.6.27
|
4
4
|
Summary: `naeural_client` is the Python SDK required for client app development for the Naeural Edge Protocol Edge Protocol framework
|
5
5
|
Project-URL: Homepage, https://github.com/NaeuralEdgeProtocol/naeural_client
|
6
6
|
Project-URL: Bug Tracker, https://github.com/NaeuralEdgeProtocol/naeural_client/issues
|
@@ -1,5 +1,5 @@
|
|
1
1
|
naeural_client/__init__.py,sha256=YimqgDbjLuywsf8zCWE0EaUXH4MBUrqLxt0TDV558hQ,632
|
2
|
-
naeural_client/_ver.py,sha256=
|
2
|
+
naeural_client/_ver.py,sha256=Yz-umaskmmy3SGQA4LtCO3eIsBcFLfPh9-24KjHp6hk,331
|
3
3
|
naeural_client/base_decentra_object.py,sha256=C4iwZTkhKNBS4VHlJs5DfElRYLo4Q9l1V1DNVSk1fyQ,4412
|
4
4
|
naeural_client/plugins_manager_mixin.py,sha256=X1JdGLDz0gN1rPnTN_5mJXR8JmqoBFQISJXmPR9yvCo,11106
|
5
5
|
naeural_client/base/__init__.py,sha256=hACh83_cIv7-PwYMM3bQm2IBmNqiHw-3PAfDfAEKz9A,259
|
@@ -14,7 +14,7 @@ naeural_client/base/webapp_pipeline.py,sha256=QmPLVmhP0CPdi0YuvbZEH4APYz2Amtw3gy
|
|
14
14
|
naeural_client/base/payload/__init__.py,sha256=y8fBI8tG2ObNfaXFWjyWZXwu878FRYj_I8GIbHT4GKE,29
|
15
15
|
naeural_client/base/payload/payload.py,sha256=x-au7l67Z_vfn_4R2C_pjZCaFuUVXHngJiGOfIAYVdE,2690
|
16
16
|
naeural_client/bc/__init__.py,sha256=FQj23D1PrY06NUOARiKQi4cdj0-VxnoYgYDEht8lpr8,158
|
17
|
-
naeural_client/bc/base.py,sha256=
|
17
|
+
naeural_client/bc/base.py,sha256=FEzIterEL8ZOPO8cwlPQB0g16fY4q9fp8X8YtkJ8PpA,40169
|
18
18
|
naeural_client/bc/chain.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
19
19
|
naeural_client/bc/ec.py,sha256=qI8l7YqiS4MNftlx-tF7IZUswrSeQc7KMn5OZ0fEaJs,23370
|
20
20
|
naeural_client/certs/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
@@ -83,8 +83,8 @@ naeural_client/utils/comm_utils.py,sha256=4cS9llRr_pK_3rNgDcRMCQwYPO0kcNU7AdWy_L
|
|
83
83
|
naeural_client/utils/config.py,sha256=v7xHikr6Z5Sbvf3opYeMhYzGWD2pe0HlRwa-aGJzUh8,6323
|
84
84
|
naeural_client/utils/dotenv.py,sha256=_AgSo35n7EnQv5yDyu7C7i0kHragLJoCGydHjvOkrYY,2008
|
85
85
|
naeural_client/utils/oracle_sync/multiple_requests.py,sha256=GLzROGZ0gI4d1PVWgW_JBUYZjEL4LqZvHvwelxDiPW4,20892
|
86
|
-
naeural_client-2.6.
|
87
|
-
naeural_client-2.6.
|
88
|
-
naeural_client-2.6.
|
89
|
-
naeural_client-2.6.
|
90
|
-
naeural_client-2.6.
|
86
|
+
naeural_client-2.6.27.dist-info/METADATA,sha256=rde6sZu0nzqXIJHVbDh8ZNizuzjDhkdAl3TlzSj8BS0,12354
|
87
|
+
naeural_client-2.6.27.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
|
88
|
+
naeural_client-2.6.27.dist-info/entry_points.txt,sha256=PNdyotDaQBAslZREx5luVyj0kqpQnwNACwkFNTPIHU4,55
|
89
|
+
naeural_client-2.6.27.dist-info/licenses/LICENSE,sha256=cvOsJVslde4oIaTCadabXnPqZmzcBO2f2zwXZRmJEbE,11311
|
90
|
+
naeural_client-2.6.27.dist-info/RECORD,,
|
File without changes
|
File without changes
|
File without changes
|