+  my $uid = POSIX::getuid;
+  my $gid = POSIX::getgid;
+
+  $tpl->parse_if_block('users',1);
+
+  # ID's of user and group
+
+  $tpl->fillin('UID',$uid);
+  $tpl->fillin('GID',$gid);
+
+  # Names of user and group
+
+  if(my $user = getpwuid($uid))
+  {
+   $tpl->fillin('USER',encode_entities($user));
+   $tpl->parse_if_block('user_detected',1);
+  }
+  else
+  {
+   $tpl->parse_if_block('user_detected',0);
+  }
+
+  if(my $group = getgrgid($gid))
+  {
+   $tpl->fillin('GROUP',encode_entities($group));
+   $tpl->parse_if_block('group_detected',1);
+  }
+  else
+  {
+   $tpl->parse_if_block('group_detected',0);
+  }
+
+  # Process umask
+
+  $tpl->fillin('UMASK',sprintf('%04o',umask));
+ }
+ else
+ {
+  $tpl->parse_if_block('users',0);
+ }
+
+ my $output = header(-type => 'text/html');
+ $output   .= $tpl->get_template;
+
+ return \$output;