Comments (2)
Just to note; I am auditing your code in general. What would be the easiest way for me to send you the things I find? There are quite a lot of issues in your code: you use variable-sized buffers all over, esp. in the memory management section... you really should probably use std::vector
or perhaps a new type... but what you’re writing is technically incorrect and almost certainly insecure!— You declare enums incorrectly too; as if you were writing C not C++. I’m not 100% sure, but I also think you’re using std::bind
incorrectly; or at least given the length of your arguments it’s very, very difficult to figure out if it’s secure or not.
Moreover, the code in general a complete mess. You misspell things all the time (I understand English isn’t your first language) and the documentation is awful.
from libtorrent.
Variable-length arrays are part of C99, and nice to use so I use them. While some uses of non-POD cases need to be fixed it is a limited issue. In those the other cases it is no more incorrect or insecure than their use in C99. Same for enums, what is C or C++ style doesn't matter.
And length of bind arguments only matter if they are incorrect, with type safety ensuring that the arguments are the right type.
Real examples of issues are whats needed, not generic statements on style are less useful.
Removed several extra semicolons.
from libtorrent.
Related Issues (20)
- Just FYI: rTorrent Crash, 'priority_queue_erase(...) called on an invalid item.' HOT 4
- Build with/without INOTIFY HOT 1
- Regular rtorrent crashes because of DHT HOT 2
- LibTorrentTest fails to build on 13.8 due to multiple definitions. HOT 2
- Crash when rechecking torrents with missing empty files
- 0.13.8: test suite linkinmg fails with LTO
- Support for BEP52 (BitTorrent v2) HOT 1
- libtorrent: FTBFS on hurd-i386: error: 'IPV6_TCLASS' was not declared in this scope. HOT 1
- How to build libtorrent after commit 53596af? HOT 3
- Getting lots of "message:7 network error" on handshake_manager however network is fine
- 'make check' fails with missing sig_t on Solaris
- OpenSSL v3 support for libtorrent
- how to bind a callback function for specific events HOT 1
- Several branches
- New release?
- FR: ipv6 support for UDP trackers
- Commit e22c77f causes rtorrent/rutorrent to crash when setting torrent file priority to not download
- received a chunk that has already been filled
- Commit 0f957c2 breaks rtorrent IPV4 TOS setting.
- libtorrent.so 0.13.8 crash on Rasberry PI4 kernel due to unaligned access HOT 5
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from libtorrent.