summaryrefslogtreecommitdiff
path: root/console-client/console.c
diff options
context:
space:
mode:
authorMarcus Brinkmann <marcus@gnu.org>2005-07-11 13:59:24 +0000
committerMarcus Brinkmann <marcus@gnu.org>2005-07-11 13:59:24 +0000
commit94414efd38f6a555ac97d013bd0aced76803142d (patch)
tree39a3a126bf24edc3a0e1658fc0863f0da9453909 /console-client/console.c
parent2f745c154065dfeae33c864b4e61cfca7a3d4974 (diff)
2005-07-11 Samuel Thibault <samuel.thibault@ens-lyon.org>
* Makefile (modules): Add `current-vcs' and its rules. * console.c (console_current_id): New function. * input.h (console_current_id): New prototype. * trans.c (struct netnode): New member `symlink_path'. (console_demuxer): Handle case when node it anonymous. (netfs_S_io_select): Likewise. (netfs_S_io_read): Likewise. (netfs_S_io_write): Likewise. (netfs_report_access): Likewise. (netfs_attempt_mksymlink): Implement symlinks. (netfs_attempt_lookup): Likewise. (netfs_attempt_unlink): Likewise. (netfs_attempt_link): Likewise. (netfs_attempt_mkfile): Likewise. (netfs_attempt_readlink): Likewise. (netfs_get_dirents): Likewise. (netfs_create_consnode): Likewise. * trans.h (struct consnode): New members `readlink' and `mksymlink'. * current-vcs.c: New file.
Diffstat (limited to 'console-client/console.c')
-rw-r--r--console-client/console.c18
1 files changed, 18 insertions, 0 deletions
diff --git a/console-client/console.c b/console-client/console.c
index 019ea3f1..06a8c1ac 100644
--- a/console-client/console.c
+++ b/console-client/console.c
@@ -64,6 +64,24 @@ static char *console_node;
/* Callbacks for input source drivers. */
+/* Returns current console ID. */
+error_t
+console_current_id (int *cur)
+{
+ vcons_t vcons;
+
+ mutex_lock (&global_lock);
+ vcons = active_vcons;
+ if (!vcons)
+ {
+ mutex_unlock (&global_lock);
+ return ENODEV;
+ }
+ *cur = vcons->id;
+ mutex_unlock (&global_lock);
+ return 0;
+}
+
/* Switch the active console to console ID or DELTA (relative to the
active console). */
error_t