diff --git a/pylcg/__init__.py b/pylcg/__init__.py
@@ -1,5 +1,9 @@
+#!/usr/bin/env python
+# PyLCG - Linear Congruential Generator for IP Sharding - Developed by acidvegas ib Python (https://github.com/acidvegas/pylcg)
+# pylcg/__init__.py
+
from .core import LCG, IPRange, ip_stream
__version__ = "1.0.3"
-__author__ = "acidvegas"
-__all__ = ["LCG", "IPRange", "ip_stream"]
-\ No newline at end of file
+__author__ = "acidvegas"
+__all__ = ["LCG", "IPRange", "ip_stream"]
diff --git a/pylcg/cli.py b/pylcg/cli.py
@@ -1,6 +1,12 @@
+#!/usr/bin/env python
+# PyLCG - Linear Congruential Generator for IP Sharding - Developed by acidvegas ib Python (https://github.com/acidvegas/pylcg)
+# pylcg/cli.py
+
import argparse
+
from .core import ip_stream
+
def main():
parser = argparse.ArgumentParser(description='Ultra-fast random IP address generator with optional sharding')
parser.add_argument('cidr', help='Target IP range in CIDR format')
@@ -26,5 +32,7 @@ def main():
for ip in ip_stream(args.cidr, args.shard_num, args.total_shards, args.seed, args.state):
print(ip)
+
+
if __name__ == '__main__':
- main()
+ main()
+\ No newline at end of file
diff --git a/pylcg/core.py b/pylcg/core.py
@@ -1,6 +1,11 @@
+#!/usr/bin/env python
+# PyLCG - Linear Congruential Generator for IP Sharding - Developed by acidvegas ib Python (https://github.com/acidvegas/pylcg)
+# pylcg/core.py
+
import ipaddress
import random
+
class LCG:
'''Linear Congruential Generator for deterministic random number generation'''
diff --git a/pylcg/state.py b/pylcg/state.py
@@ -1,6 +1,11 @@
+#!/usr/bin/env python
+# PyLCG - Linear Congruential Generator for IP Sharding - Developed by acidvegas ib Python (https://github.com/acidvegas/pylcg)
+# pylcg/state.py
+
import os
import tempfile
+
def save_state(seed: int, cidr: str, shard: int, total: int, lcg_current: int):
'''
Save LCG state to temp file
@@ -12,9 +17,8 @@ def save_state(seed: int, cidr: str, shard: int, total: int, lcg_current: int):
:param lcg_current: Current LCG state
'''
- file_name = f'pylcg_{seed}_{cidr.replace("/", "_")}_{shard}_{total}.state'
-
+ file_name = f'pylcg_{seed}_{cidr.replace("/", "_")}_{shard}_{total}.state'
state_file = os.path.join(tempfile.gettempdir(), file_name)
-
+
with open(state_file, 'w') as f:
- f.write(str(lcg_current))
-\ No newline at end of file
+ f.write(str(lcg_current))
| | | |