| 240 | } |
| 241 | |
| 242 | ACL_VSTRING *acl_vstring_dbuf_alloc(ACL_DBUF_POOL *dbuf, size_t len) |
| 243 | { |
| 244 | ACL_VSTRING *vp; |
| 245 | |
| 246 | if (len < 1) { |
| 247 | len = 64; |
| 248 | } |
| 249 | |
| 250 | if (dbuf) { |
| 251 | vp = (ACL_VSTRING*) acl_dbuf_pool_alloc(dbuf, sizeof(*vp)); |
| 252 | vp->vbuf.alloc.dbuf = dbuf; |
| 253 | vp->vbuf.data = (unsigned char *) acl_dbuf_pool_alloc(dbuf, len); |
| 254 | vp->vbuf.flags = ACL_VBUF_FLAG_DBUF; |
| 255 | } else { |
| 256 | vp = (ACL_VSTRING *) acl_mymalloc(sizeof(*vp)); |
| 257 | vp->vbuf.alloc.dbuf = NULL; |
| 258 | vp->vbuf.data = (unsigned char *) acl_mymalloc(len); |
| 259 | vp->vbuf.flags = 0; |
| 260 | } |
| 261 | |
| 262 | ACL_VSTRING_RESET(vp); |
| 263 | vp->vbuf.len = (int) len; |
| 264 | vp->vbuf.data[0] = 0; |
| 265 | #if 0 |
| 266 | vp->vbuf.get_ready = acl_vstring_get_ready; |
| 267 | vp->vbuf.put_ready = acl_vstring_put_ready; |
| 268 | vp->vbuf.space = acl_vstring_space; |
| 269 | #endif |
| 270 | vp->maxlen = 0; |
| 271 | vp->vbuf.fd = ACL_FILE_INVALID; |
| 272 | #if defined(_WIN32) || defined(_WIN64) |
| 273 | vp->vbuf.hmap = NULL; |
| 274 | #endif |
| 275 | |
| 276 | return vp; |
| 277 | } |
| 278 | |
| 279 | static void mmap_buf_init(ACL_VSTRING *vp, size_t offset) |
| 280 | { |
no test coverage detected
searching dependent graphs…