Lines 195-208
path_message_func (DBusConnection *conn
Link Here
|
195 |
if((sharename = smbparser_get_sharename(shares, path))) |
195 |
if((sharename = smbparser_get_sharename(shares, path))) |
196 |
{ |
196 |
{ |
197 |
value = smbparser_get_key(shares,sharename,key); |
197 |
value = smbparser_get_key(shares,sharename,key); |
|
|
198 |
if (!value) |
199 |
value = ""; |
198 |
daemon_log(LOG_INFO,"Share Get key %s in section %s -> %s\n", key, sharename,value); |
200 |
daemon_log(LOG_INFO,"Share Get key %s in section %s -> %s\n", key, sharename,value); |
199 |
dbus_message_append_args (reply_message, DBUS_TYPE_STRING, value?value:"", DBUS_TYPE_INVALID); |
|
|
200 |
} |
201 |
} |
201 |
else |
202 |
else |
202 |
{ |
203 |
{ |
203 |
daemon_log(LOG_ERR,"Share Get key path: %s not found\n",path); |
204 |
daemon_log(LOG_ERR,"Share Get key path: %s not found\n",path); |
204 |
dbus_message_append_args (reply_message, DBUS_TYPE_STRING, "", DBUS_TYPE_INVALID); |
205 |
value = ""; |
205 |
} |
206 |
} |
|
|
207 |
dbus_message_append_args (reply_message, DBUS_TYPE_STRING, &value, DBUS_TYPE_INVALID); |
206 |
dbus_free (path); |
208 |
dbus_free (path); |
207 |
dbus_free (key); |
209 |
dbus_free (key); |
208 |
if (reply_message) |
210 |
if (reply_message) |
Lines 235-247
path_message_func (DBusConnection *conn
Link Here
|
235 |
if (!(sharename = smbparser_get_sharename(shares, path))) |
237 |
if (!(sharename = smbparser_get_sharename(shares, path))) |
236 |
{ |
238 |
{ |
237 |
daemon_log(LOG_ERR,"SGN Sharename path:%s not found\n", path); |
239 |
daemon_log(LOG_ERR,"SGN Sharename path:%s not found\n", path); |
238 |
dbus_message_append_args (reply_message, DBUS_TYPE_STRING, "", DBUS_TYPE_INVALID); |
240 |
sharename = ""; |
239 |
} |
241 |
} |
240 |
else |
242 |
else |
241 |
{ |
243 |
{ |
242 |
daemon_log(LOG_INFO,"Path %s is sharename %s\n", path, sharename); |
244 |
daemon_log(LOG_INFO,"Path %s is sharename %s\n", path, sharename); |
243 |
dbus_message_append_args (reply_message, DBUS_TYPE_STRING, sharename, DBUS_TYPE_INVALID); |
|
|
244 |
} |
245 |
} |
|
|
246 |
dbus_message_append_args (reply_message, DBUS_TYPE_STRING, &sharename, DBUS_TYPE_INVALID); |
245 |
dbus_free (path); |
247 |
dbus_free (path); |
246 |
if (reply_message) |
248 |
if (reply_message) |
247 |
{ |
249 |
{ |
Lines 264-269
path_message_func (DBusConnection *conn
Link Here
|
264 |
char *sharename; |
266 |
char *sharename; |
265 |
char *newname; |
267 |
char *newname; |
266 |
DBusMessage *reply_message = NULL; |
268 |
DBusMessage *reply_message = NULL; |
|
|
269 |
dbus_uint32_t reply_val; |
267 |
|
270 |
|
268 |
dbus_error_init (&error); |
271 |
dbus_error_init (&error); |
269 |
if (dbus_message_get_args |
272 |
if (dbus_message_get_args |
Lines 274-281
path_message_func (DBusConnection *conn
Link Here
|
274 |
reply_message = dbus_message_new_method_return (message); |
277 |
reply_message = dbus_message_new_method_return (message); |
275 |
if (!(sharename = smbparser_get_sharename(shares, path))) |
278 |
if (!(sharename = smbparser_get_sharename(shares, path))) |
276 |
{ |
279 |
{ |
|
|
280 |
reply_val = 2; |
277 |
daemon_log(LOG_ERR,"ShareRename Sharename path:%s not found\n", path); |
281 |
daemon_log(LOG_ERR,"ShareRename Sharename path:%s not found\n", path); |
278 |
dbus_message_append_args (reply_message, DBUS_TYPE_UINT32, 2, DBUS_TYPE_INVALID); |
282 |
dbus_message_append_args (reply_message, DBUS_TYPE_UINT32, &reply_val, DBUS_TYPE_INVALID); |
279 |
} |
283 |
} |
280 |
else |
284 |
else |
281 |
{ |
285 |
{ |
Lines 285-304
path_message_func (DBusConnection *conn
Link Here
|
285 |
/* FIXME strlen(sharename) et meme modele que ShareAdd */ |
289 |
/* FIXME strlen(sharename) et meme modele que ShareAdd */ |
286 |
if(authorized_section(sharename) == FALSE) |
290 |
if(authorized_section(sharename) == FALSE) |
287 |
{ |
291 |
{ |
|
|
292 |
reply_val = 1; |
288 |
daemon_log(LOG_ERR,"ShareRename received, but error: authorized_section\n"); |
293 |
daemon_log(LOG_ERR,"ShareRename received, but error: authorized_section\n"); |
289 |
dbus_message_append_args (reply_message, DBUS_TYPE_UINT32, 1, DBUS_TYPE_INVALID); |
294 |
dbus_message_append_args (reply_message, DBUS_TYPE_UINT32, &reply_val, DBUS_TYPE_INVALID); |
290 |
} |
295 |
} |
291 |
else |
296 |
else |
292 |
if(find_sharename(shares,newname)) |
297 |
if(find_sharename(shares,newname)) |
293 |
{ |
298 |
{ |
|
|
299 |
reply_val = 1; |
294 |
daemon_log(LOG_ERR,"ShareRename Sharename already in used: %s\n", newname); |
300 |
daemon_log(LOG_ERR,"ShareRename Sharename already in used: %s\n", newname); |
295 |
dbus_message_append_args (reply_message, DBUS_TYPE_UINT32, 1, DBUS_TYPE_INVALID); |
301 |
dbus_message_append_args (reply_message, DBUS_TYPE_UINT32, &reply_val, DBUS_TYPE_INVALID); |
296 |
} |
302 |
} |
297 |
else |
303 |
else |
298 |
{ |
304 |
{ |
|
|
305 |
reply_val = 0; |
299 |
daemon_log(LOG_ERR,"ShareRename Sharename not in used: %s\n", newname); |
306 |
daemon_log(LOG_ERR,"ShareRename Sharename not in used: %s\n", newname); |
300 |
shares = smbparser_rename_section(shares,sharename,newname); |
307 |
shares = smbparser_rename_section(shares,sharename,newname); |
301 |
dbus_message_append_args (reply_message, DBUS_TYPE_UINT32, 0, DBUS_TYPE_INVALID); |
308 |
dbus_message_append_args (reply_message, DBUS_TYPE_UINT32, &reply_val, DBUS_TYPE_INVALID); |
302 |
} |
309 |
} |
303 |
} |
310 |
} |
304 |
} |
311 |
} |
Lines 325-330
path_message_func (DBusConnection *conn
Link Here
|
325 |
char *name; |
332 |
char *name; |
326 |
char *username; |
333 |
char *username; |
327 |
DBusMessage *reply_message = NULL; |
334 |
DBusMessage *reply_message = NULL; |
|
|
335 |
dbus_uint32_t reply_val; |
328 |
|
336 |
|
329 |
dbus_error_init (&error); |
337 |
dbus_error_init (&error); |
330 |
if (!dbus_message_get_args |
338 |
if (!dbus_message_get_args |
Lines 341-381
path_message_func (DBusConnection *conn
Link Here
|
341 |
reply_message = dbus_message_new_method_return (message); |
349 |
reply_message = dbus_message_new_method_return (message); |
342 |
if (name && (strlen(name) == 0)) |
350 |
if (name && (strlen(name) == 0)) |
343 |
{ |
351 |
{ |
|
|
352 |
reply_val = 4; |
344 |
daemon_log(LOG_ERR,"ShareAdd received, but error: strlen(name) == 0\n"); |
353 |
daemon_log(LOG_ERR,"ShareAdd received, but error: strlen(name) == 0\n"); |
345 |
dbus_message_append_args (reply_message, DBUS_TYPE_UINT32, 4, DBUS_TYPE_INVALID); |
354 |
dbus_message_append_args (reply_message, DBUS_TYPE_UINT32, &reply_val, DBUS_TYPE_INVALID); |
346 |
goto exit; |
355 |
goto exit; |
347 |
} |
356 |
} |
348 |
if (!authorized_section(name)) |
357 |
if (!authorized_section(name)) |
349 |
{ |
358 |
{ |
|
|
359 |
reply_val = 3; |
350 |
daemon_log(LOG_ERR,"ShareAdd received, but error: authorized_section\n"); |
360 |
daemon_log(LOG_ERR,"ShareAdd received, but error: authorized_section\n"); |
351 |
dbus_message_append_args (reply_message, DBUS_TYPE_UINT32, 3, DBUS_TYPE_INVALID); |
361 |
dbus_message_append_args (reply_message, DBUS_TYPE_UINT32, &reply_val, DBUS_TYPE_INVALID); |
352 |
goto exit; |
362 |
goto exit; |
353 |
} |
363 |
} |
354 |
if (!authorized_path(connection, path)) |
364 |
if (!authorized_path(connection, path)) |
355 |
{ |
365 |
{ |
|
|
366 |
reply_val = 2; |
356 |
daemon_log(LOG_ERR,"ShareAdd received, but error: authorized_path\n"); |
367 |
daemon_log(LOG_ERR,"ShareAdd received, but error: authorized_path\n"); |
357 |
dbus_message_append_args (reply_message, DBUS_TYPE_UINT32, 2, DBUS_TYPE_INVALID); |
368 |
dbus_message_append_args (reply_message, DBUS_TYPE_UINT32, &reply_val, DBUS_TYPE_INVALID); |
358 |
goto exit; |
369 |
goto exit; |
359 |
} |
370 |
} |
360 |
if(find_sharename(shares,name)) |
371 |
if(find_sharename(shares,name)) |
361 |
{ |
372 |
{ |
|
|
373 |
reply_val = 1; |
362 |
daemon_log(LOG_ERR,"ShareAdd Name already in used: %s\n", name); |
374 |
daemon_log(LOG_ERR,"ShareAdd Name already in used: %s\n", name); |
363 |
dbus_message_append_args (reply_message, DBUS_TYPE_UINT32, 1, DBUS_TYPE_INVALID); |
375 |
dbus_message_append_args (reply_message, DBUS_TYPE_UINT32, &reply_val, DBUS_TYPE_INVALID); |
364 |
goto exit; |
376 |
goto exit; |
365 |
} |
377 |
} |
366 |
if(smbparser_get_sharename(shares, path)) |
378 |
if(smbparser_get_sharename(shares, path)) |
367 |
{ |
379 |
{ |
|
|
380 |
reply_val = 3; |
368 |
daemon_log(LOG_ERR,"ShareAdd Path already in used: %s\n", path); |
381 |
daemon_log(LOG_ERR,"ShareAdd Path already in used: %s\n", path); |
369 |
dbus_message_append_args (reply_message, DBUS_TYPE_UINT32, 3, DBUS_TYPE_INVALID); |
382 |
dbus_message_append_args (reply_message, DBUS_TYPE_UINT32, &reply_val, DBUS_TYPE_INVALID); |
370 |
goto exit; |
383 |
goto exit; |
371 |
} |
384 |
} |
372 |
if((username = get_nautilus_user(connection))) |
385 |
if((username = get_nautilus_user(connection))) |
373 |
{ |
386 |
{ |
|
|
387 |
reply_val = 0; |
374 |
daemon_log(LOG_INFO,"ShareAdd Name not in used: %s\n", name); |
388 |
daemon_log(LOG_INFO,"ShareAdd Name not in used: %s\n", name); |
375 |
shares = smbparser_add_section(shares,name,username); |
389 |
shares = smbparser_add_section(shares,name,username); |
376 |
shares = smbparser_set_key(shares,name,"force user", username); |
390 |
shares = smbparser_set_key(shares,name,"force user", username); |
377 |
shares = smbparser_set_key(shares,name,"path",path); |
391 |
shares = smbparser_set_key(shares,name,"path",path); |
378 |
dbus_message_append_args (reply_message, DBUS_TYPE_UINT32, 0, DBUS_TYPE_INVALID); |
392 |
dbus_message_append_args (reply_message, DBUS_TYPE_UINT32, &reply_val, DBUS_TYPE_INVALID); |
379 |
} |
393 |
} |
380 |
exit: |
394 |
exit: |
381 |
dbus_free (name); |
395 |
dbus_free (name); |
Lines 396-401
path_message_func (DBusConnection *conn
Link Here
|
396 |
DBusError error; |
410 |
DBusError error; |
397 |
char *sharename; |
411 |
char *sharename; |
398 |
DBusMessage *reply_message = NULL; |
412 |
DBusMessage *reply_message = NULL; |
|
|
413 |
dbus_uint32_t reply_val; |
399 |
|
414 |
|
400 |
dbus_error_init (&error); |
415 |
dbus_error_init (&error); |
401 |
if (dbus_message_get_args |
416 |
if (dbus_message_get_args |
Lines 407-425
path_message_func (DBusConnection *conn
Link Here
|
407 |
|
422 |
|
408 |
if(authorized_section(sharename) == FALSE) |
423 |
if(authorized_section(sharename) == FALSE) |
409 |
{ |
424 |
{ |
|
|
425 |
reply_val = 1; |
410 |
daemon_log(LOG_ERR,"SectionUsed received, but error: authorized_section\n"); |
426 |
daemon_log(LOG_ERR,"SectionUsed received, but error: authorized_section\n"); |
411 |
dbus_message_append_args (reply_message, DBUS_TYPE_UINT32, 1, DBUS_TYPE_INVALID); |
427 |
dbus_message_append_args (reply_message, DBUS_TYPE_UINT32, &reply_val, DBUS_TYPE_INVALID); |
412 |
} |
428 |
} |
413 |
else |
429 |
else |
414 |
if(find_sharename(shares,sharename)) |
430 |
if(find_sharename(shares,sharename)) |
415 |
{ |
431 |
{ |
|
|
432 |
reply_val = 1; |
416 |
daemon_log(LOG_ERR,"SU Sharename already in used: %s\n", sharename); |
433 |
daemon_log(LOG_ERR,"SU Sharename already in used: %s\n", sharename); |
417 |
dbus_message_append_args (reply_message, DBUS_TYPE_UINT32, 1, DBUS_TYPE_INVALID); |
434 |
dbus_message_append_args (reply_message, DBUS_TYPE_UINT32, &reply_val, DBUS_TYPE_INVALID); |
418 |
} |
435 |
} |
419 |
else |
436 |
else |
420 |
{ |
437 |
{ |
|
|
438 |
reply_val = 0; |
421 |
daemon_log(LOG_INFO,"SU Sharename not in used: %s\n", sharename); |
439 |
daemon_log(LOG_INFO,"SU Sharename not in used: %s\n", sharename); |
422 |
dbus_message_append_args (reply_message, DBUS_TYPE_UINT32, 0, DBUS_TYPE_INVALID); |
440 |
dbus_message_append_args (reply_message, DBUS_TYPE_UINT32, &reply_val, DBUS_TYPE_INVALID); |
423 |
} |
441 |
} |
424 |
dbus_free (sharename); |
442 |
dbus_free (sharename); |
425 |
if (reply_message) |
443 |
if (reply_message) |
Lines 452-458
path_message_func (DBusConnection *conn
Link Here
|
452 |
daemon_log(LOG_INFO,"Path %s -> %d\n", path, writable); |
470 |
daemon_log(LOG_INFO,"Path %s -> %d\n", path, writable); |
453 |
dbus_free (path); |
471 |
dbus_free (path); |
454 |
reply_message = dbus_message_new_method_return (message); |
472 |
reply_message = dbus_message_new_method_return (message); |
455 |
dbus_message_append_args (reply_message, DBUS_TYPE_BOOLEAN, writable, DBUS_TYPE_INVALID); |
473 |
dbus_message_append_args (reply_message, DBUS_TYPE_BOOLEAN, &writable, DBUS_TYPE_INVALID); |
456 |
if (reply_message) |
474 |
if (reply_message) |
457 |
{ |
475 |
{ |
458 |
dbus_connection_send (connection, reply_message, NULL); |
476 |
dbus_connection_send (connection, reply_message, NULL); |