#include "includes.h"
#include "web/swat_proto.h"
+#include "libcli/security/security.h"
#define _(x) lang_msg_rotate(talloc_tos(),x)
{
/* show machine name rather PID on table "Open Files"? */
if (PID_or_Machine) {
- PIDMAP *p;
+ PIDMAP *p, *next;
- for (p = pidmap; p != NULL; ) {
+ for (p = pidmap; p != NULL; p = next) {
+ next = p->next;
DLIST_REMOVE(pidmap, p);
SAFE_FREE(p->machine);
SAFE_FREE(p);
void *dummy)
{
char *utf8_fname;
+ char *utf8_sharepath;
int deny_mode;
size_t converted_size;
printf("NONE ");
printf("</td>");
- push_utf8_allocate(&utf8_fname, fname, &converted_size);
- printf("<td>%s</td><td>%s</td></tr>\n",
- utf8_fname,tstring(talloc_tos(),e->time.tv_sec));
- SAFE_FREE(utf8_fname);
+ push_utf8_talloc(talloc_tos(), &utf8_fname, fname, &converted_size);
+ push_utf8_talloc(talloc_tos(), &utf8_sharepath, sharepath,
+ &converted_size);
+ printf("<td>%s</td><td>%s</td><td>%s</td></tr>\n",
+ utf8_sharepath,utf8_fname,tstring(talloc_tos(),e->time.tv_sec));
+ TALLOC_FREE(utf8_fname);
}
/* kill off any connections chosen by the user */
-static int traverse_fn1(struct db_record *rec,
- const struct connections_key *key,
+static int traverse_fn1(const struct connections_key *key,
const struct connections_data *crec,
void *private_data)
{
}
/* traversal fn for showing machine connections */
-static int traverse_fn2(struct db_record *rec,
- const struct connections_key *key,
+static int traverse_fn2(const struct connections_key *key,
const struct connections_data *crec,
void *private_data)
{
}
/* traversal fn for showing share connections */
-static int traverse_fn3(struct db_record *rec,
- const struct connections_key *key,
+static int traverse_fn3(const struct connections_key *key,
const struct connections_data *crec,
void *private_data)
{
PID_or_Machine = 0;
}
- connections_forall(traverse_fn1, NULL);
+ connections_forall_read(traverse_fn1, NULL);
initPid2Machine ();
printf("<table>\n");
- printf("<tr><td>%s</td><td>%s</td></tr>", _("version:"), SAMBA_VERSION_STRING);
+ printf("<tr><td>%s</td><td>%s</td></tr>", _("version:"), samba_version_string());
fflush(stdout);
printf("<tr><td>%s</td><td>%s</td>\n", _("smbd:"), smbd_running()?_("running"):_("not running"));
}
printf("</tr>\n");
- connections_forall(traverse_fn2, NULL);
+ connections_forall_read(traverse_fn2, NULL);
printf("</table><p>\n");
printf("<tr><th>%s</th><th>%s</th><th>%s</th><th>%s</th><th>%s</th><th>%s</th></tr>\n\n",
_("Share"), _("User"), _("Group"), _("PID"), _("Client"), _("Date"));
- connections_forall(traverse_fn3, NULL);
+ connections_forall_read(traverse_fn3, NULL);
printf("</table><p>\n");
printf("<h3>%s</h3>\n", _("Open Files"));
printf("<table border=1>\n");
- printf("<tr><th>%s</th><th>%s</th><th>%s</th><th>%s</th><th>%s</th><th>%s</th></tr>\n", _("PID"), _("Sharing"), _("R/W"), _("Oplock"), _("File"), _("Date"));
+ printf("<tr><th>%s</th><th>%s</th><th>%s</th><th>%s</th><th>%s</th><th>%s</th><th>%s</th><th>%s</th></tr>\n",
+ _("PID"), _("UID"), _("Sharing"), _("R/W"), _("Oplock"), _("Share"), _("File"), _("Date"));
locking_init_readonly();
share_mode_forall(print_share_mode, NULL);