Lines Matching refs:len

52 static char* is_prio(char* s, ssize_t len) {
53 if ((len <= 0) || !isdigit(*s++)) return nullptr;
54 --len;
55 static const size_t max_prio_len = (len < 4) ? len : 4;
65 static char* is_timestamp(char* s, ssize_t len) {
66 while ((len > 0) && (*s == ' ')) {
68 --len;
70 if ((len <= 0) || !isdigit(*s++)) return nullptr;
71 --len;
74 while ((len > 0) && ((c = *s++))) {
75 --len;
99 char* android::log_strntok_r(char* s, ssize_t& len, char*& last,
102 if (len <= 0) return nullptr;
110 ++len;
117 ++len;
121 while ((len > 0) && ((*s == '\r') || (*s == '\n'))) {
123 --len;
126 if (len <= 0) return last = nullptr;
130 if (len <= 0) {
135 --len;
145 peek = is_prio(s, len);
155 if (adjust > len) {
156 adjust = len;
159 len -= adjust;
161 if ((*s == '[') && ((peek = is_timestamp(s + 1, len - 1)))) {
163 if (adjust > len) {
164 adjust = len;
167 len -= adjust;
173 peek = is_timestamp(s, len);
187 if (adjust > len) {
188 adjust = len;
191 len -= adjust;
230 ssize_t len = 0;
234 if (len < (ssize_t)(sizeof(buffer) - 1)) {
236 read(cli->getSocket(), buffer + len, sizeof(buffer) - 1 - len);
238 if ((retval == 0) && (len <= 0)) {
244 len += retval;
245 bool full = len == (sizeof(buffer) - 1);
246 char* ep = buffer + len;
250 !!(tok = android::log_strntok_r(tok, len, ptr, sublen));
254 len = sublen;
267 const char* real_string, ssize_t len) {
269 if (len < (ssize_t)(strlen(real_format) + 5)) return;
273 if (!ep || (ep > &real_string[len]) || (real > log_time(CLOCK_REALTIME))) {
296 void LogKlog::sniffTime(log_time& now, const char*& buf, ssize_t len,
298 if (len <= 0) return;
301 if ((len > 10) && (*buf == '[')) {
303 if (cp && (cp > &buf[len - 1])) cp = nullptr;
306 len -= cp - buf;
307 if ((len > 0) && isspace(*cp)) {
309 --len;
316 if (((b = android::strnstr(cp, len, suspendStr))) &&
317 (((b += strlen(suspendStr)) - cp) < len)) {
318 len -= b - cp;
319 calculateCorrection(now, b, len);
320 } else if (((b = android::strnstr(cp, len, resumeStr))) &&
321 (((b += strlen(resumeStr)) - cp) < len)) {
322 len -= b - cp;
323 calculateCorrection(now, b, len);
324 } else if (((b = android::strnstr(cp, len, healthdStr))) &&
325 (((b += strlen(healthdStr)) - cp) < len) &&
326 ((b = android::strnstr(b, len -= b - cp, batteryStr))) &&
327 (((b += strlen(batteryStr)) - cp) < len)) {
333 } else if (((b = android::strnstr(cp, len, suspendedStr))) &&
334 (((b += strlen(suspendStr)) - cp) < len)) {
335 len -= b - cp;
339 if ((*endp == '.') && ((endp - b) < len)) {
342 len -= endp - b;
343 while (--len && isdigit(*++endp) && (multiplier /= 10)) {
368 pid_t LogKlog::sniffPid(const char*& buf, ssize_t len) {
369 if (len <= 0) return 0;
374 if (((ssize_t)strnlen(cp, len) == len) && cp[len]) {
378 if ((len > 9) && (cp[0] == 'c') && isdigit(cp[1]) &&
398 while (len) {
409 --len;
415 static int parseKernelPrio(const char*& buf, ssize_t len) {
418 if ((len > 0) && (*cp == '<')) {
420 while (--len && isdigit(*++cp)) {
423 if ((len > 0) && (*cp == '>')) {
436 void LogKlog::synchronize(const char* buf, ssize_t len) {
437 const char* cp = android::strnstr(buf, len, suspendStr);
439 cp = android::strnstr(buf, len, resumeStr);
442 const char* rp = android::strnstr(buf, len, resumeStr);
452 parseKernelPrio(cp, len - (cp - buf));
455 sniffTime(now, cp, len - (cp - buf), true);
457 const char* suspended = android::strnstr(buf, len, suspendedStr);
469 parseKernelPrio(cp, len - (cp - buf));
471 sniffTime(now, cp, len - (cp - buf), true);
504 static const char* strnrchr(const char* s, ssize_t len, char c) {
506 for (; len > 0; ++s, len--) {
547 int LogKlog::log(const char* buf, ssize_t len) {
548 if (auditd && android::strnstr(buf, len, auditStr)) {
553 int pri = parseKernelPrio(p, len);
556 sniffTime(now, p, len - (p - buf), false);
559 const char* start = android::strnstr(p, len - (p - buf), klogdStr);
578 const pid_t pid = sniffPid(p, len - (p - buf));
591 while ((p < &buf[len]) && (isspace(*p) || !*p)) {
594 if (p >= &buf[len]) { // timestamp, no content
600 ssize_t taglen = len - (p - buf);
744 if (len < (p - buf)) {
745 p = &buf[len];
748 while ((p < &buf[len]) && (isspace(*p) || !*p)) {
752 ssize_t b = len - (p - buf);