GNU General Public License for more details.
*/
-/* $Id$ */
-#include "silc.h"
+#include "silcruntime.h"
/************************** Types and definitions ***************************/
goto fail; \
} \
if (silc_unlikely((req + 1) <= 0)) { \
- silc_set_errno(SILC_ERR_UNDERFLOW); \
+ silc_set_errno(SILC_ERR_OVERFLOW); \
goto fail; \
} \
} while(0)
case SILC_PARAM_REGEX:
{
const char *regex = va_arg(ap, char *);
- SilcBufferRegexFlags rflags = va_arg(ap, SilcUInt32);
+ SilcBufferRegexFlags rflags = va_arg(ap, SilcBufferRegexFlags);
SilcBufferStruct match;
SilcBool match_all = (rflags & SILC_STR_REGEX_ALL) != 0;
SilcBool match_nl = (rflags & SILC_STR_REGEX_NL) != 0;
if (x && tmp_len) {
FORMAT_HAS_SPACE(stack, dst, tmp_len);
- silc_buffer_put(dst, x, tmp_len);
+ silc_buffer_put(dst, (unsigned char *)x, tmp_len);
silc_buffer_pull(dst, tmp_len);
}
break;
case SILC_PARAM_REGEX:
{
const char *regex = va_arg(ap, char *);
- SilcBufferRegexFlags rflags = va_arg(ap, SilcUInt32);
+ SilcBufferRegexFlags rflags = va_arg(ap, SilcBufferRegexFlags);
SilcBufferStruct match;
SilcBool match_all = (rflags & SILC_STR_REGEX_ALL) != 0;
SilcBool match_nl = (rflags & SILC_STR_REGEX_NL) != 0;
return -1;
ok:
+ len = src->data - start_ptr;
+
/* Push the buffer back to the start. */
- if (process && !advance) {
- len = src->data - start_ptr;
+ if (process && !advance)
silc_buffer_push(src, len);
- }
+
return len;
}