Return to mmfile.c CVS log | Up to [local] / src / usr.bin / grep |
version 1.10, 2006/02/09 09:54:47 | version 1.11, 2006/09/19 05:52:23 | ||
---|---|---|---|
|
|
||
goto ouch2; | goto ouch2; | ||
if (st.st_size > SIZE_T_MAX) /* too big to mmap */ | if (st.st_size > SIZE_T_MAX) /* too big to mmap */ | ||
goto ouch2; | goto ouch2; | ||
if ((st.st_mode & S_IFREG) == 0) /* only mmap regular files */ | if (!S_ISDIR(st.st_mode)) /* only mmap regular files */ | ||
goto ouch2; | goto ouch2; | ||
mmf->len = (size_t)st.st_size; | mmf->len = (size_t)st.st_size; | ||
mmf->base = mmap(NULL, mmf->len, PROT_READ, MAP_PRIVATE, mmf->fd, (off_t)0); | mmf->base = mmap(NULL, mmf->len, PROT_READ, MAP_PRIVATE, mmf->fd, (off_t)0); |