Lines Matching refs:src
25 #define COPY4(dst, src) \
26 put_unaligned(get_unaligned((const u32 *)(src)), (u32 *)(dst))
35 bool lzop_is_valid_header(const unsigned char *src)
40 if (*src++ != lzop_magic[i])
46 static inline const unsigned char *parse_header(const unsigned char *src)
51 if (!lzop_is_valid_header(src))
55 src += 9;
60 version = get_unaligned_be16(src);
61 src += 7;
63 src++;
64 if (get_unaligned_be32(src) & HEADER_HAS_FILTER)
65 src += 4; /* filter info */
68 src += 12;
70 src += 4; /* skip mtime_high */
72 i = *src++;
74 src += i + 4;
76 return src;
79 int lzop_decompress(const unsigned char *src, size_t src_len,
83 const unsigned char *send = src + src_len;
88 src = parse_header(src);
89 if (!src)
93 while (src < send) {
95 dlen = get_unaligned_be32(src);
96 src += 4;
105 slen = get_unaligned_be32(src);
106 src += 8;
119 memcpy(dst, src, slen);
123 r = lzo1x_decompress_safe((u8 *)src, slen, dst, &tmp);
134 src += slen;