Fix end-of-line style properties on newly added files.
[openocd.git] / src / helper / membuf.h
index 6b291ff212cb1754c5bafd29475481aa8f9652d0..4990854dd6fa79b4820dcedc92fb973b20cebeae 100644 (file)
-#ifndef HELPER_MEMBUF_H\r
-#define HELPER_MEMBUF_H\r
-\r
-/** @file */\r
-\r
-/** @page MEMBUF - an auto-growing string buffer\r
- *\r
- * With OpenOCD often, one must write code that sends text to\r
- * different places.. the historical command_ctx, or JIM output,\r
- * and/or other places.\r
- *\r
- * This is a simple 'string buffer' that auto-grows.\r
- *\r
- * More correctly put, this is a "memory buffer"\r
- * it may contain binary data \r
- * \r
- * Note: Internally the buffer always has a 'null terminator'\r
- */\r
-\r
-/* contents of this structure are 'opaque' */\r
-struct membuf;\r
-  \r
-\r
-/** Create a new membuf\r
- * By default the memory buffer has "some non-zero-size"\r
- * (couple hundred bytes, exact amount is opaque)\r
- */\r
-struct membuf *membuf_new(void);\r
-\r
-/** delete (destroy) the mem buffer\r
- * @param pBuf - buffer to release\r
- */\r
-void membuf_delete( struct membuf *pBuf );\r
-\r
-\r
-/** grow/shrink a membuf by specified amount.\r
- * @param pBuf   - the buffer \r
- * @param amount - the amount to grow or shrink by.\r
- *\r
- * Symantics of 'realloc()' return NULL on failure\r
- */\r
-struct membuf *membuf_grow( struct membuf *pBuf, int amount );\r
-\r
-/** how long is this buffer (memlen(), strlen())\r
- * @param pBuf - the buffer\r
- * \r
- * @returns: length of current buffer.\r
- */\r
-size_t membuf_len( struct membuf *pBuf );\r
-\r
-\r
-/** reset an membuf to zero length.\r
- * @param pBuf - buffer to reset\r
- *\r
- * Note this does not 'release' the memory buffer\r
- */\r
-void membuf_reset( struct membuf *pBuf );\r
-\r
-\r
-/** sprintf() to the string buffer\r
- * @param pBuf - buffer to capture sprintf() data into\r
- * @param fmt  - printf format\r
- *\r
- * Returns 0 on success\r
- * Returns non-zero on failure\r
- */\r
-int membuf_sprintf( struct membuf *pBuf , const char *fmt, ... );\r
-\r
-/** vsprintf() to the string buffer\r
- * @param pBuf - buffer to capture sprintf() data into\r
- * @param fmt  - printf format\r
- * @param ap   - va_list for fmt\r
- *\r
- * Returns 0 on success\r
- * Returns non-zero on failure\r
- */\r
-int membuf_vsprintf( struct membuf *pBuf , const char *fmt, va_list ap);\r
-\r
-/** Tokenize lines using strtok() \r
- * @param pBuf - buffer to tokenize\r
- * @param delim - delimiter parameter for strtok_r()\r
- * \r
- * Identical to "strtok()" - pass "pBuff=NULL" on second call\r
- *\r
- * NOTE: This call is <b>destructive</b> to the buffer.\r
- */\r
-const char *membuf_strtok( struct membuf *pBuf, const char *delim, void **pSave );\r
-\r
-/** Return pointer to the memory in the buffer\r
- * @param pBuf - buffer\r
- *\r
- * NOTE: Thou shall not modify this pointer, it is <b>CONST</b>\r
- */\r
-const void *membuf_datapointer( struct membuf *pBuf );\r
-\r
-\r
-/** Append data to the buffer\r
- * @param pBuf  - buffer to append\r
- * @param pData - pointer to data to append\r
- * @param len   - length of data to append\r
- *\r
- * Modified symantics of "memcpy()".  On memory allocation failure\r
- * returns NULL.  On success, returns pointer to orginal membuf.\r
- */\r
-struct membuf *membuf_append( struct membuf *pBuf, const void *pData, size_t len );\r
-\r
-\r
-/** Append string to the buffer\r
- * @param pBuf  - buffer to append\r
- * @param str   - string to append\r
- *\r
- * Modified symantics of "strcat()".  On memory allocation failure\r
- * returns NULL.  On success, returns pointer to orginal membuf.\r
- */\r
-struct membuf *membuf_strcat( struct membuf *pBuf, const char *s );\r
-\r
-\r
-#endif\r
+#ifndef HELPER_MEMBUF_H
+#define HELPER_MEMBUF_H
+
+/** @file */
+
+/** @page MEMBUF - an auto-growing string buffer
+ *
+ * With OpenOCD often, one must write code that sends text to
+ * different places.. the historical command_ctx, or JIM output,
+ * and/or other places.
+ *
+ * This is a simple 'string buffer' that auto-grows.
+ *
+ * More correctly put, this is a "memory buffer"
+ * it may contain binary data 
+ * 
+ * Note: Internally the buffer always has a 'null terminator'
+ */
+
+/* contents of this structure are 'opaque' */
+struct membuf;
+  
+
+/** Create a new membuf
+ * By default the memory buffer has "some non-zero-size"
+ * (couple hundred bytes, exact amount is opaque)
+ */
+struct membuf *membuf_new(void);
+
+/** delete (destroy) the mem buffer
+ * @param pBuf - buffer to release
+ */
+void membuf_delete( struct membuf *pBuf );
+
+
+/** grow/shrink a membuf by specified amount.
+ * @param pBuf   - the buffer 
+ * @param amount - the amount to grow or shrink by.
+ *
+ * Symantics of 'realloc()' return NULL on failure
+ */
+struct membuf *membuf_grow( struct membuf *pBuf, int amount );
+
+/** how long is this buffer (memlen(), strlen())
+ * @param pBuf - the buffer
+ * 
+ * @returns: length of current buffer.
+ */
+size_t membuf_len( struct membuf *pBuf );
+
+
+/** reset an membuf to zero length.
+ * @param pBuf - buffer to reset
+ *
+ * Note this does not 'release' the memory buffer
+ */
+void membuf_reset( struct membuf *pBuf );
+
+
+/** sprintf() to the string buffer
+ * @param pBuf - buffer to capture sprintf() data into
+ * @param fmt  - printf format
+ *
+ * Returns 0 on success
+ * Returns non-zero on failure
+ */
+int membuf_sprintf( struct membuf *pBuf , const char *fmt, ... );
+
+/** vsprintf() to the string buffer
+ * @param pBuf - buffer to capture sprintf() data into
+ * @param fmt  - printf format
+ * @param ap   - va_list for fmt
+ *
+ * Returns 0 on success
+ * Returns non-zero on failure
+ */
+int membuf_vsprintf( struct membuf *pBuf , const char *fmt, va_list ap);
+
+/** Tokenize lines using strtok() 
+ * @param pBuf - buffer to tokenize
+ * @param delim - delimiter parameter for strtok_r()
+ * 
+ * Identical to "strtok()" - pass "pBuff=NULL" on second call
+ *
+ * NOTE: This call is <b>destructive</b> to the buffer.
+ */
+const char *membuf_strtok( struct membuf *pBuf, const char *delim, void **pSave );
+
+/** Return pointer to the memory in the buffer
+ * @param pBuf - buffer
+ *
+ * NOTE: Thou shall not modify this pointer, it is <b>CONST</b>
+ */
+const void *membuf_datapointer( struct membuf *pBuf );
+
+
+/** Append data to the buffer
+ * @param pBuf  - buffer to append
+ * @param pData - pointer to data to append
+ * @param len   - length of data to append
+ *
+ * Modified symantics of "memcpy()".  On memory allocation failure
+ * returns NULL.  On success, returns pointer to orginal membuf.
+ */
+struct membuf *membuf_append( struct membuf *pBuf, const void *pData, size_t len );
+
+
+/** Append string to the buffer
+ * @param pBuf  - buffer to append
+ * @param str   - string to append
+ *
+ * Modified symantics of "strcat()".  On memory allocation failure
+ * returns NULL.  On success, returns pointer to orginal membuf.
+ */
+struct membuf *membuf_strcat( struct membuf *pBuf, const char *s );
+
+
+#endif

Linking to existing account procedure

If you already have an account and want to add another login method you MUST first sign in with your existing account and then change URL to read https://review.openocd.org/login/?link to get to this page again but this time it'll work for linking. Thank you.

SSH host keys fingerprints

1024 SHA256:YKx8b7u5ZWdcbp7/4AeXNaqElP49m6QrwfXaqQGJAOk gerrit-code-review@openocd.zylin.com (DSA)
384 SHA256:jHIbSQa4REvwCFG4cq5LBlBLxmxSqelQPem/EXIrxjk gerrit-code-review@openocd.org (ECDSA)
521 SHA256:UAOPYkU9Fjtcao0Ul/Rrlnj/OsQvt+pgdYSZ4jOYdgs gerrit-code-review@openocd.org (ECDSA)
256 SHA256:A13M5QlnozFOvTllybRZH6vm7iSt0XLxbA48yfc2yfY gerrit-code-review@openocd.org (ECDSA)
256 SHA256:spYMBqEYoAOtK7yZBrcwE8ZpYt6b68Cfh9yEVetvbXg gerrit-code-review@openocd.org (ED25519)
+--[ED25519 256]--+
|=..              |
|+o..   .         |
|*.o   . .        |
|+B . . .         |
|Bo. = o S        |
|Oo.+ + =         |
|oB=.* = . o      |
| =+=.+   + E     |
|. .=o   . o      |
+----[SHA256]-----+
2048 SHA256:0Onrb7/PHjpo6iVZ7xQX2riKN83FJ3KGU0TvI0TaFG4 gerrit-code-review@openocd.zylin.com (RSA)