[Author Prev][Author Next][Thread Prev][Thread Next][Author Index][Thread Index]
[tor-bugs] #22342 [Core Tor/Tor]: Add a nice append-only stringbuffer, and refactor code to use it
#22342: Add a nice append-only stringbuffer, and refactor code to use it
------------------------------+------------------------------
Reporter: nickm | Owner:
Type: defect | Status: new
Priority: Medium | Milestone: Tor: unspecified
Component: Core Tor/Tor | Version:
Severity: Normal | Keywords: intro
Actual Points: | Parent ID:
Points: | Reviewer:
Sponsor: |
------------------------------+------------------------------
Right now we have 2.5 strategies for building strings out of pieces:
1a) Sometimes, we use a stack-allocated buffer, and a pointer into that
buffer, and we write into that buffer using tor_snprintf and strlcpy and
friends.
1b) Sometimes we do the same with a heap-allocated buffer.
2) Sometimes we allocate a smartlist full of little strings, and use
smartlist_join_strings() to turn it into one big string.
Both of these methods are cumbersome and at least somewhat inefficient.
It would be better to have something that managed the buffer size, and
supported commands like "extend with snprintf" or "extend with string".
Calling this "intro" because it doesn't require extensive knowledge of
Tor; but it isn't a small task to do it right. This is something where
we'd want to optimize for efficiency... though in the short run, we might
just do it as a wrapper around smartlist_t and smartlist_join_strings().
--
Ticket URL: <https://trac.torproject.org/projects/tor/ticket/22342>
Tor Bug Tracker & Wiki <https://trac.torproject.org/>
The Tor Project: anonymity online
_______________________________________________
tor-bugs mailing list
tor-bugs@xxxxxxxxxxxxxxxxxxxx
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-bugs