aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorkraxel <kraxel>2006-07-05 14:42:28 +0000
committerkraxel <kraxel>2006-07-05 14:42:28 +0000
commit3bd317714ef0fded2788626c6dcc903c69c6303a (patch)
tree1e48bd0ac669fba5df7a10e7101b433a9e99bc62
parent29988aa795c33e2450c8dc1dbf3ccbff850fb2c8 (diff)
downloadxenwatch-3bd317714ef0fded2788626c6dcc903c69c6303a.tar.gz
window title tweaks
-rw-r--r--xenscreen.c15
1 files changed, 12 insertions, 3 deletions
diff --git a/xenscreen.c b/xenscreen.c
index c5c541a..f178f87 100644
--- a/xenscreen.c
+++ b/xenscreen.c
@@ -5,6 +5,7 @@
#include <unistd.h>
#include <signal.h>
#include <time.h>
+#include <sys/utsname.h>
#include <xs.h>
@@ -234,6 +235,7 @@ static void usage(FILE *fp)
int main(int argc, char *argv[])
{
struct sigaction act,old;
+ struct utsname uts;
fd_set set;
struct xs_handle *xenstore = NULL;
xs_transaction_t xst;
@@ -292,6 +294,12 @@ int main(int argc, char *argv[])
exit(1);
}
+ memset(&uts, 0, sizeof(uts));
+ if (0 == uname(&uts)) {
+ screen_title = malloc(strlen(uts.nodename) +4);
+ sprintf(screen_title, "[%s]", uts.nodename);
+ }
+
if (NULL == getenv("STY") || NULL == strstr(getenv("STY"),screen_session)) {
/* not running inside screen */
if (!screen_detached) {
@@ -351,11 +359,12 @@ int main(int argc, char *argv[])
fprintf(stderr,
"###\n"
"### Managing Xen consoles using screen.\n"
- "### This is the monitor process.\n"
+ "### This is the monitor process, at %s.\n"
"###\n"
- "\n");
+ "\n",
+ uts.nodename);
if (screen_shell)
- screen_command("screen", "-t", "shell", "/bin/bash", NULL);
+ screen_command("screen", "-t", "[shell]", "/bin/bash", NULL);
/* connect to xenstore */
xenstore = xenstore_open(1,1,1,1);