Browse code

cov: changing size of nwatches to prevent truncation.

Mickey Sola authored on 2015/09/24 05:07:41
Showing 2 changed files
... ...
@@ -69,7 +69,9 @@ static int onas_ddd_init_ht(uint32_t ht_size) {
69 69
 	return onas_ht_init(&ddd_ht, ht_size);
70 70
 }
71 71
 
72
-static int onas_ddd_init_wdlt(uint32_t nwatches) {
72
+static int onas_ddd_init_wdlt(uint64_t nwatches) {
73
+
74
+	if (nwatches <= 0) return CL_EARG;
73 75
 
74 76
 	wdlt = (char **) cli_calloc(nwatches << 1, sizeof(char*));
75 77
 	if (!wdlt) return CL_EMEM;
... ...
@@ -98,7 +100,7 @@ static int onas_ddd_grow_wdlt() {
98 98
 
99 99
 
100 100
 /* TODO: Support configuration for changing/setting number of inotify watches. */
101
-int onas_ddd_init(uint32_t nwatches, size_t ht_size) {
101
+int onas_ddd_init(uint64_t nwatches, size_t ht_size) {
102 102
 
103 103
 	const char* nwatch_file = "/proc/sys/fs/inotify/max_user_watches";
104 104
 	int nwfd = 0;
... ...
@@ -38,7 +38,7 @@ struct ddd_thrarg {
38 38
 };
39 39
 
40 40
 static int onas_ddd_init_ht(uint32_t ht_size);
41
-static int onas_ddd_init_wdlt(uint32_t nwatches);
41
+static int onas_ddd_init_wdlt(uint64_t nwatches);
42 42
 static int onas_ddd_grow_wdlt();
43 43
 
44 44
 static int onas_ddd_watch(const char *pathname, int fan_fd, uint64_t fan_mask, int in_fd, uint64_t in_mask);
... ...
@@ -46,7 +46,7 @@ static int onas_ddd_watch_hierarchy(const char* pathname, size_t len, int fd, ui
46 46
 static int onas_ddd_unwatch(const char *pathname, int fan_fd, int in_fd);
47 47
 static int onas_ddd_unwatch_hierarchy(const char* pathname, size_t len, int fd, uint32_t type);
48 48
 
49
-int onas_ddd_init(uint32_t nwatches, size_t ht_size);
49
+int onas_ddd_init(uint64_t nwatches, size_t ht_size);
50 50
 void *onas_ddd_th(void *arg);
51 51
 static void onas_ddd_exit(int sig);
52 52