Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[7.6.1] object of type 'NoneType' has no len() #5850

Closed
kozlovsky opened this issue Dec 14, 2020 · 4 comments · Fixed by #5853
Closed

[7.6.1] object of type 'NoneType' has no len() #5850

kozlovsky opened this issue Dec 14, 2020 · 4 comments · Fixed by #5853
Assignees

Comments

@kozlovsky
Copy link
Contributor

kozlovsky commented Dec 14, 2020

This issue affects multiple users in 7.6.1 release. As I understand it, the error happens in ipv8.messaging.anonymization.hidden_services:

    def create_e2e(self, info_hash, intro_point):
        circuit = self.select_circuit_for_infohash(info_hash)
        if not circuit:
            self.logger.error("No circuit for contacting the introduction point")
            return

        hop = Hop(Peer(LibNaCLPK(intro_point.seeder_pk[10:])))
        ...

As I understand it, in the last line intro_point.seeder_pk is an empty byte string for some reason, and as a result, LibNaCLPK constructor receives b'' as an argument, and the pk value inside LibNaCLPK.__init__() becomes None.

@sentry-for-tribler
Copy link

Sentry issue: SENTRY-FOR-760-W

@sentry-for-tribler
Copy link

Sentry issue: TRIBLER-45

@egbertbouman
Copy link
Member

This is probably due to a serialization issue. The error shows up if the last byte of the public key of the introduction point is 0x00. I fixed this in IPv8. As soon as the pointer is updated, this issue can be closed.

@egbertbouman
Copy link
Member

Note that even though this issue is fixed, the error will continue to show up since the exit nodes are still running the old code.

This issue was closed.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Development

Successfully merging a pull request may close this issue.

2 participants