OXIESEC PANEL
- Current Dir:
/
/
usr
/
lib
/
python3
/
dist-packages
/
landscape
/
lib
Server IP: 139.59.38.164
Upload:
Create Dir:
Name
Size
Modified
Perms
📁
..
-
05/09/2024 07:14:55 AM
rwxr-xr-x
📄
__init__.py
198 bytes
02/22/2018 02:19:04 PM
rw-r--r--
📁
__pycache__
-
05/09/2024 07:14:55 AM
rwxr-xr-x
📄
amp.py
21.24 KB
02/22/2018 02:19:04 PM
rw-r--r--
📁
apt
-
05/09/2024 07:14:55 AM
rwxr-xr-x
📄
bootstrap.py
1.38 KB
02/22/2018 02:19:04 PM
rw-r--r--
📄
bpickle.py
6.31 KB
02/22/2018 02:19:04 PM
rw-r--r--
📄
cli.py
440 bytes
02/22/2018 02:19:04 PM
rw-r--r--
📄
cloud.py
1.67 KB
02/22/2018 02:19:04 PM
rw-r--r--
📄
compat.py
564 bytes
02/22/2018 02:19:04 PM
rw-r--r--
📄
config.py
12.15 KB
02/22/2018 02:19:04 PM
rw-r--r--
📄
disk.py
4.97 KB
02/22/2018 02:19:04 PM
rw-r--r--
📄
encoding.py
545 bytes
02/22/2018 02:19:04 PM
rw-r--r--
📄
fd.py
751 bytes
02/22/2018 02:19:04 PM
rw-r--r--
📄
fetch.py
6.49 KB
02/22/2018 02:19:04 PM
rw-r--r--
📄
format.py
959 bytes
02/22/2018 02:19:04 PM
rw-r--r--
📄
fs.py
3.55 KB
02/22/2018 02:19:04 PM
rw-r--r--
📄
gpg.py
1.75 KB
11/18/2020 12:06:42 AM
rw-r--r--
📄
hashlib.py
264 bytes
02/22/2018 02:19:04 PM
rw-r--r--
📄
jiffies.py
1.58 KB
02/22/2018 02:19:04 PM
rw-r--r--
📄
juju.py
860 bytes
02/22/2018 02:19:04 PM
rw-r--r--
📄
lock.py
705 bytes
02/22/2018 02:19:04 PM
rw-r--r--
📄
log.py
484 bytes
02/22/2018 02:19:04 PM
rw-r--r--
📄
logging.py
2.47 KB
02/22/2018 02:19:04 PM
rw-r--r--
📄
lsb_release.py
893 bytes
02/22/2018 02:19:04 PM
rw-r--r--
📄
message.py
1.91 KB
02/22/2018 02:19:04 PM
rw-r--r--
📄
monitor.py
6.13 KB
02/22/2018 02:19:04 PM
rw-r--r--
📄
network.py
8.91 KB
02/22/2018 02:19:04 PM
rw-r--r--
📄
persist.py
20.5 KB
02/22/2018 02:19:04 PM
rw-r--r--
📄
plugin.py
1.75 KB
02/22/2018 02:19:04 PM
rw-r--r--
📄
process.py
6.45 KB
02/22/2018 02:19:04 PM
rw-r--r--
📄
reactor.py
8.61 KB
02/22/2018 02:19:04 PM
rw-r--r--
📄
schema.py
5.97 KB
02/22/2018 02:19:04 PM
rw-r--r--
📄
scriptcontent.py
522 bytes
02/22/2018 02:19:04 PM
rw-r--r--
📄
sequenceranges.py
5.59 KB
02/22/2018 02:19:04 PM
rw-r--r--
📄
store.py
1.38 KB
02/22/2018 02:19:04 PM
rw-r--r--
📄
sysstats.py
6.94 KB
02/22/2018 02:19:04 PM
rw-r--r--
📄
tag.py
505 bytes
02/22/2018 02:19:04 PM
rw-r--r--
📄
testing.py
24.08 KB
02/22/2018 02:19:04 PM
rw-r--r--
📄
timestamp.py
233 bytes
02/22/2018 02:19:04 PM
rw-r--r--
📄
twisted_util.py
4.37 KB
02/22/2018 02:19:04 PM
rw-r--r--
📄
user.py
1.44 KB
02/22/2018 02:19:04 PM
rw-r--r--
📄
versioning.py
1.24 KB
02/22/2018 02:19:04 PM
rw-r--r--
📄
vm_info.py
3.2 KB
11/18/2020 12:06:42 AM
rw-r--r--
📄
warning.py
394 bytes
02/22/2018 02:19:04 PM
rw-r--r--
Editing: message.py
Close
"""Helpers for reliable persistent message queues.""" ANCIENT = 1 def got_next_expected(store, next_expected): """Our peer has told us what it expects our next message's sequence to be. Call this with the message store and sequence number that the peer wants next; this will do various things based on what *this* side has in its outbound queue store. 1. The peer expects a sequence greater than what we last sent. This is the common case and generally it should be expecting last_sent_sequence+len(messages_sent)+1. 2. The peer expects a sequence number our side has already sent, and we no longer have that message. In this case, just send *all* messages we have, including the previous generation, starting at the sequence number the peer expects (meaning that messages have probably been lost). 3. The peer expects a sequence number we already sent, and we still have that message cached. In this case, we send starting from that message. If the next expected sequence from the server refers to a message older than we have, then L{ANCIENT} will be returned. """ ret = None old_sequence = store.get_sequence() if next_expected > old_sequence: store.delete_old_messages() pending_offset = next_expected - old_sequence elif next_expected < (old_sequence - store.get_pending_offset()): # "Ancient": The other side wants messages we don't have, # so let's just reset our counter to what it expects. pending_offset = 0 ret = ANCIENT else: # No messages transferred, or # "Old": We'll try to send these old messages that the # other side still wants. pending_offset = (store.get_pending_offset() + next_expected - old_sequence) store.set_pending_offset(pending_offset) store.set_sequence(next_expected) return ret