diff options
Diffstat (limited to 'snac.c')
| -rw-r--r-- | snac.c | 33 |
1 files changed, 18 insertions, 15 deletions
| @@ -78,7 +78,7 @@ int srv_open(char *basedir) | |||
| 78 | cfg_file = xs_fmt("%s/server.json", basedir); | 78 | cfg_file = xs_fmt("%s/server.json", basedir); |
| 79 | 79 | ||
| 80 | if ((f = fopen(cfg_file, "r")) == NULL) | 80 | if ((f = fopen(cfg_file, "r")) == NULL) |
| 81 | srv_log(xs_fmt("cannot open %s", cfg_file)); | 81 | srv_log(xs_fmt("error opening '%s'", cfg_file)); |
| 82 | else { | 82 | else { |
| 83 | xs *cfg_data; | 83 | xs *cfg_data; |
| 84 | 84 | ||
| @@ -89,7 +89,7 @@ int srv_open(char *basedir) | |||
| 89 | srv_config = xs_json_loads(cfg_data); | 89 | srv_config = xs_json_loads(cfg_data); |
| 90 | 90 | ||
| 91 | if (srv_config == NULL) | 91 | if (srv_config == NULL) |
| 92 | srv_log(xs_fmt("cannot parse %s", cfg_file)); | 92 | srv_log(xs_fmt("cannot parse '%s'", cfg_file)); |
| 93 | else { | 93 | else { |
| 94 | char *host; | 94 | char *host; |
| 95 | char *prefix; | 95 | char *prefix; |
| @@ -134,6 +134,17 @@ int validate_uid(char *uid) | |||
| 134 | } | 134 | } |
| 135 | 135 | ||
| 136 | 136 | ||
| 137 | void snac_free(snac *snac) | ||
| 138 | /* frees a user snac */ | ||
| 139 | { | ||
| 140 | free(snac->uid); | ||
| 141 | free(snac->basedir); | ||
| 142 | free(snac->config); | ||
| 143 | free(snac->key); | ||
| 144 | free(snac->actor); | ||
| 145 | } | ||
| 146 | |||
| 147 | |||
| 137 | int snac_open(snac *snac, char *uid) | 148 | int snac_open(snac *snac, char *uid) |
| 138 | /* opens a user */ | 149 | /* opens a user */ |
| 139 | { | 150 | { |
| @@ -172,13 +183,13 @@ int snac_open(snac *snac, char *uid) | |||
| 172 | ret = 1; | 183 | ret = 1; |
| 173 | } | 184 | } |
| 174 | else | 185 | else |
| 175 | srv_log(xs_fmt("cannot parse %s", key_file)); | 186 | srv_log(xs_fmt("cannot parse '%s'", key_file)); |
| 176 | } | 187 | } |
| 177 | else | 188 | else |
| 178 | srv_log(xs_fmt("error opening '%s'", key_file)); | 189 | srv_log(xs_fmt("error opening '%s'", key_file)); |
| 179 | } | 190 | } |
| 180 | else | 191 | else |
| 181 | srv_log(xs_fmt("cannot parse %s", cfg_file)); | 192 | srv_log(xs_fmt("cannot parse '%s'", cfg_file)); |
| 182 | } | 193 | } |
| 183 | else | 194 | else |
| 184 | srv_log(xs_fmt("error opening '%s'", cfg_file)); | 195 | srv_log(xs_fmt("error opening '%s'", cfg_file)); |
| @@ -186,18 +197,10 @@ int snac_open(snac *snac, char *uid) | |||
| 186 | else | 197 | else |
| 187 | srv_log(xs_fmt("invalid user '%s'", uid)); | 198 | srv_log(xs_fmt("invalid user '%s'", uid)); |
| 188 | 199 | ||
| 189 | return ret; | 200 | if (!ret) |
| 190 | } | 201 | snac_free(snac); |
| 191 | |||
| 192 | 202 | ||
| 193 | void snac_free(snac *snac) | 203 | return ret; |
| 194 | /* frees a user snac */ | ||
| 195 | { | ||
| 196 | free(snac->uid); | ||
| 197 | free(snac->basedir); | ||
| 198 | free(snac->config); | ||
| 199 | free(snac->key); | ||
| 200 | free(snac->actor); | ||
| 201 | } | 204 | } |
| 202 | 205 | ||
| 203 | 206 | ||