...
|
...
|
@@ -305,7 +305,7 @@ static void *fmap_need(fmap_t *m, size_t at, size_t len, int lock) {
|
305
|
305
|
return NULL;
|
306
|
306
|
|
307
|
307
|
if(!CLI_ISCONTAINED(0, m->len, at, len)) {
|
308
|
|
- cli_warnmsg("fmap: attempted oof need\n");
|
|
308
|
+ cli_dbgmsg("fmap: attempted oof need\n");
|
309
|
309
|
return NULL;
|
310
|
310
|
}
|
311
|
311
|
|
...
|
...
|
@@ -406,10 +406,8 @@ void *fmap_need_offstr(fmap_t *m, size_t at, size_t len_hint) {
|
406
|
406
|
if(!len_hint || len_hint > m->len - at)
|
407
|
407
|
len_hint = m->len - at;
|
408
|
408
|
|
409
|
|
- if(!CLI_ISCONTAINED(0, m->len, at, len_hint)) {
|
410
|
|
- cli_warnmsg("fmap: attempted oof need_str\n");
|
|
409
|
+ if(!CLI_ISCONTAINED(0, m->len, at, len_hint))
|
411
|
410
|
return NULL;
|
412
|
|
- }
|
413
|
411
|
|
414
|
412
|
fmap_aging(m);
|
415
|
413
|
|
...
|
...
|
@@ -446,10 +444,8 @@ void *fmap_gets(fmap_t *m, char *dst, size_t *at, size_t max_len) {
|
446
|
446
|
char *src = (void *)((char *)m + m->hdrsz + *at), *endptr = NULL;
|
447
|
447
|
size_t len = MIN(max_len-1, m->len - *at), fullen = len;
|
448
|
448
|
|
449
|
|
- if(!len || !CLI_ISCONTAINED(0, m->len, *at, len)) {
|
450
|
|
- cli_warnmsg("fmap: attempted oof need_str\n");
|
|
449
|
+ if(!len || !CLI_ISCONTAINED(0, m->len, *at, len))
|
451
|
450
|
return NULL;
|
452
|
|
- }
|
453
|
451
|
|
454
|
452
|
fmap_aging(m);
|
455
|
453
|
|
...
|
...
|
@@ -520,7 +516,7 @@ fmap_t *fmap(int fd, off_t offset, size_t len) { /* WIN32 */
|
520
|
520
|
}
|
521
|
521
|
|
522
|
522
|
pages = fmap_align_items(len, pgsz);
|
523
|
|
- hdrsz = fmap_align_to(sizeof(fmap_t);
|
|
523
|
+ hdrsz = fmap_align_to(sizeof(fmap_t), pgsz);
|
524
|
524
|
|
525
|
525
|
if(!(m = (fmap_t *)cli_malloc(sizeof(fmap_t)))) {
|
526
|
526
|
cli_errmsg("fmap: canot allocate fmap_t\n", fd);
|
...
|
...
|
@@ -531,12 +527,12 @@ fmap_t *fmap(int fd, off_t offset, size_t len) { /* WIN32 */
|
531
|
531
|
free(m);
|
532
|
532
|
return NULL;
|
533
|
533
|
}
|
534
|
|
- if(!(m->mh = CreateFileMapping(m->fh, NULL, PAGE_READONLY, (DWORD)(len>>32), (DWORD)len, NULL))) {
|
|
534
|
+ if(!(m->mh = CreateFileMapping(m->fh, NULL, PAGE_READONLY, (DWORD)((len>>31)>>1), (DWORD)len, NULL))) {
|
535
|
535
|
cli_errmsg("fmap: cannot create a map of descriptor %d\n", fd);
|
536
|
536
|
free(m);
|
537
|
537
|
return NULL;
|
538
|
538
|
}
|
539
|
|
- if(!(m->data = MapViewOfFile(m->mh, FILE_MAP_READ, (DWORD)(offset>>32), (DWORD)(offset), len))) {
|
|
539
|
+ if(!(m->data = MapViewOfFile(m->mh, FILE_MAP_READ, (DWORD)((offset>>31)>>1), (DWORD)(offset), len))) {
|
540
|
540
|
cli_errmsg("fmap: cannot map file descriptor %d\n", fd);
|
541
|
541
|
CloseHandle(m->mh);
|
542
|
542
|
free(m);
|
...
|
...
|
@@ -562,7 +558,7 @@ void funmap(fmap_t *m) { /* WIN32 */
|
562
|
562
|
|
563
|
563
|
static void *fmap_need(fmap_t *m, size_t at, size_t len) { /* WIN32 */
|
564
|
564
|
if(!CLI_ISCONTAINED(0, m->len, at, len)) {
|
565
|
|
- cli_warnmsg("fmap: attempted oof need\n");
|
|
565
|
+ cli_dbgmsg("fmap: attempted oof need\n");
|
566
|
566
|
return NULL;
|
567
|
567
|
}
|
568
|
568
|
if(!len)
|
...
|
...
|
@@ -593,10 +589,8 @@ void *fmap_need_offstr(fmap_t *m, size_t at, size_t len_hint) { /* WIN32 */
|
593
|
593
|
if(!len_hint || len_hint > m->len - at)
|
594
|
594
|
len_hint = m->len - at;
|
595
|
595
|
|
596
|
|
- if(!CLI_ISCONTAINED(0, m->len, at, len_hint)) {
|
597
|
|
- cli_warnmsg("fmap: attempted oof need_str\n");
|
|
596
|
+ if(!CLI_ISCONTAINED(0, m->len, at, len_hint))
|
598
|
597
|
return NULL;
|
599
|
|
- }
|
600
|
598
|
|
601
|
599
|
if(memchr(ptr, 0, len_hint))
|
602
|
600
|
return (void *)ptr;
|
...
|
...
|
@@ -612,10 +606,8 @@ void *fmap_gets(fmap_t *m, char *dst, size_t *at, size_t max_len) { /* WIN32 */
|
612
|
612
|
char *src = (char *)m->data + *at, *endptr = NULL;
|
613
|
613
|
size_t len = MIN(max_len-1, m->len - *at);
|
614
|
614
|
|
615
|
|
- if(!len || !CLI_ISCONTAINED(0, m->len, *at, len)) {
|
616
|
|
- cli_warnmsg("fmap: attempted oof need_str\n");
|
|
615
|
+ if(!len || !CLI_ISCONTAINED(0, m->len, *at, len))
|
617
|
616
|
return NULL;
|
618
|
|
- }
|
619
|
617
|
|
620
|
618
|
if((endptr = memchr(src, '\n', len))) {
|
621
|
619
|
endptr++;
|