18 if (sa->
len !=
sb->len) {
70 if ((
sb->ptr && len < sb->ptrlen) || (!
sb->ptr &&
len <
sizeof(
sb->buf))) {
87 if (l >=
sizeof(
sb->buf)) {
89 if (!ptr || l + 1 >
sb->ptrlen) {
134 sb->ptrlen =
len + 1;
143 sb->ptrlen =
sb->len + 1;
159 size_t len = strlen(
s);
180 const char *ret =
NULL;
184 int rc =
vsnprintf(
string,
sizeof(
string), fmt, ap);
185 if (rc >=
sizeof(
string)) {
193 }
else if (rc >= 0) {
208 int newlen = l +
sb->len;
209 char *ns =
malloc(newlen + 1);
213 char *
s =
sb->ptr ?
sb->ptr :
sb->buf;
241 if ((
sb->len + l + 1) <=
sizeof(
sb->buf)) {
243 sb->buf[
sb->len + l] = 0;
246 size_t newlen =
sb->len + l + 128;
248 bool allocated =
true;
251 if (
p &&
sb->len > 0) {
254 }
else if (
sb->len + l + 1 >
sb->ptrlen) {
255 if (SZT_MUL_OVFCHK(newlen, 2)) {
272 *(
p +
sb->len + l) = 0;
301 ret =
vsnprintf(
string,
sizeof(
string), fmt, ap);
302 if (ret >=
sizeof(
string)) {
312 }
else if (ret >= 0) {
323 return sb->ptr ?
sb->ptr :
sb->buf;
331 return (
ut8 *)(
sb->ptr ?
sb->ptr :
sb->buf);
366 if (
sb && !
sb->weakref) {
RZ_API void Ht_() free(HtName_(Ht) *ht)
return memset(p, 0, total)
memcpy(mem, inblock.get(), min(CONTAINING_RECORD(inblock.get(), MEMBLOCK, data) ->size, size))
void * realloc(void *ptr, size_t size)
void * malloc(size_t size)
return strdup("=SP r13\n" "=LR r14\n" "=PC r15\n" "=A0 r0\n" "=A1 r1\n" "=A2 r2\n" "=A3 r3\n" "=ZF zf\n" "=SF nf\n" "=OF vf\n" "=CF cf\n" "=SN or0\n" "gpr lr .32 56 0\n" "gpr pc .32 60 0\n" "gpr cpsr .32 64 0 ____tfiae_________________qvczn\n" "gpr or0 .32 68 0\n" "gpr tf .1 64.5 0 thumb\n" "gpr ef .1 64.9 0 endian\n" "gpr jf .1 64.24 0 java\n" "gpr qf .1 64.27 0 sticky_overflow\n" "gpr vf .1 64.28 0 overflow\n" "gpr cf .1 64.29 0 carry\n" "gpr zf .1 64.30 0 zero\n" "gpr nf .1 64.31 0 negative\n" "gpr itc .4 64.10 0 if_then_count\n" "gpr gef .4 64.16 0 great_or_equal\n" "gpr r0 .32 0 0\n" "gpr r1 .32 4 0\n" "gpr r2 .32 8 0\n" "gpr r3 .32 12 0\n" "gpr r4 .32 16 0\n" "gpr r5 .32 20 0\n" "gpr r6 .32 24 0\n" "gpr r7 .32 28 0\n" "gpr r8 .32 32 0\n" "gpr r9 .32 36 0\n" "gpr r10 .32 40 0\n" "gpr r11 .32 44 0\n" "gpr r12 .32 48 0\n" "gpr r13 .32 52 0\n" "gpr r14 .32 56 0\n" "gpr r15 .32 60 0\n" "gpr r16 .32 64 0\n" "gpr r17 .32 68 0\n")
#define rz_return_if_fail(expr)
#define rz_return_val_if_fail(expr, val)
RZ_API void * rz_mem_dup(const void *s, int l)
static struct sockaddr static addrlen static backlog const void static flags void struct sockaddr from
RZ_API RZ_OWN char * rz_strbuf_drain(RzStrBuf *sb)
RZ_API RZ_OWN char * rz_strbuf_drain_nofree(RzStrBuf *sb)
RZ_API const char * rz_strbuf_set(RzStrBuf *sb, const char *s)
RZ_API bool rz_strbuf_prepend(RzStrBuf *sb, const char *s)
RZ_API char * rz_strbuf_get(RzStrBuf *sb)
RZ_API bool rz_strbuf_copy(RzStrBuf *dst, RzStrBuf *src)
RZ_API bool rz_strbuf_reserve(RzStrBuf *sb, size_t len)
RZ_API bool rz_strbuf_slice(RZ_NONNULL RzStrBuf *sb, size_t from, size_t len)
Cuts the current string into a substring.
RZ_API bool rz_strbuf_append(RzStrBuf *sb, const char *s)
RZ_API const char * rz_strbuf_initf(RzStrBuf *sb, const char *fmt,...)
RZ_API void rz_strbuf_fini(RzStrBuf *sb)
RZ_API void rz_strbuf_free(RzStrBuf *sb)
RZ_API bool rz_strbuf_equals(RzStrBuf *sa, RzStrBuf *sb)
RZ_API bool rz_strbuf_setbin(RzStrBuf *sb, const ut8 *s, size_t l)
RZ_API ut8 * rz_strbuf_getbin(RzStrBuf *sb, int *len)
static char * drain(RzStrBuf *sb)
RZ_API const char * rz_strbuf_setf(RzStrBuf *sb, const char *fmt,...)
RZ_API void rz_strbuf_init(RzStrBuf *sb)
RZ_API bool rz_strbuf_is_empty(RzStrBuf *sb)
RZ_API int rz_strbuf_length(RzStrBuf *sb)
RZ_API RzStrBuf * rz_strbuf_new(const char *str)
RZ_API bool rz_strbuf_vappendf(RzStrBuf *sb, const char *fmt, va_list ap)
RZ_API bool rz_strbuf_append_n(RzStrBuf *sb, const char *s, size_t l)
RZ_API bool rz_strbuf_setptr(RzStrBuf *sb, char *s, int len)
RZ_API const char * rz_strbuf_vsetf(RzStrBuf *sb, const char *fmt, va_list ap)
RZ_API bool rz_strbuf_appendf(RzStrBuf *sb, const char *fmt,...)