Remove uncompilable tor_mmap_file fallback. #25398

This commit is contained in:
Alex Xu (Hello71) 2018-03-02 09:49:35 -05:00
parent 54e25ab124
commit 45d3b5fa4c
2 changed files with 4 additions and 34 deletions

2
changes/bug25398 Normal file
View File

@ -0,0 +1,2 @@
o Minor bugfixes (portability):
- Remove uncompilable tor_mmap_file fallback. Fixes bug 25398.

View File

@ -417,40 +417,8 @@ tor_munmap_file(tor_mmap_t *handle)
return 0; return 0;
} }
#else #else
tor_mmap_t * #error "cannot implement tor_mmap_file"
tor_mmap_file(const char *filename) #endif /* defined(HAVE_MMAP) || ... || ... */
{
struct stat st;
char *res = read_file_to_str(filename, RFTS_BIN|RFTS_IGNORE_MISSING, &st);
tor_mmap_t *handle;
if (! res)
return NULL;
handle = tor_malloc_zero(sizeof(tor_mmap_t));
handle->data = res;
handle->size = st.st_size;
return handle;
}
/** Unmap the file mapped with tor_mmap_file(), and return 0 for success
* or -1 for failure.
*/
int
tor_munmap_file(tor_mmap_t *handle)
{
char *d = NULL;
if (handle == NULL)
return 0;
d = (char*)handle->data;
tor_free(d);
memwipe(handle, 0, sizeof(tor_mmap_t));
tor_free(handle);
/* Can't fail in this mmap()/munmap()-free case */
return 0;
}
#endif /* defined(COMPAT_HAS_MMAN_AND_PAGESIZE) || ... || ... */
/** Replacement for snprintf. Differs from platform snprintf in two /** Replacement for snprintf. Differs from platform snprintf in two
* ways: First, always NUL-terminates its output. Second, always * ways: First, always NUL-terminates its output. Second, always