How come nothing is added to utmp in this case?


 
Thread Tools Search this Thread
Top Forums Programming How come nothing is added to utmp in this case?
# 1  
Old 07-01-2007
How come nothing is added to utmp in this case?

Given the following:

Code:
#include <string.h>
#include <stdlib.h>
#include <pwd.h>
#include <unistd.h>
#include <utmp.h>
#include <stdio.h>
#include <time.h>

int main(int argc, char *argv[])
{
  struct utmp entry;
  char *fd;
  system("echo before adding entry:;who");

  entry.ut_type=USER_PROCESS;
  entry.ut_pid=getpid();
  fd = ttyname(0);
  printf("The current tty is: %s\n",fd);
  strcpy(entry.ut_line,ttyname(0)+strlen("/dev/"));
  /* only correct for ptys named /dev/tty[pqr][0-9a-z] */
  strcpy(entry.ut_id,ttyname(0)+strlen("/dev/tty"));
  time(&entry.ut_time);
  strcpy(entry.ut_user,getpwuid(getuid())->pw_name);
  memset(entry.ut_host,0,UT_HOSTSIZE);
  entry.ut_addr=0;
  setutent();
  pututline(&entry);

  system("echo after adding entry:;who");

  entry.ut_type=DEAD_PROCESS;
  memset(entry.ut_line,0,UT_LINESIZE);
  entry.ut_time=0;
  memset(entry.ut_user,0,UT_NAMESIZE);
  setutent();
  pututline(&entry);

  system("echo after removing entry:;who");

  endutent();
  return 0;

On xterm, it shows /dev/pts/3. However, when I run the above code, I see the following:

before adding entry:
cda pts/1 2007-06-30 21:04 (:0.0)
cda pts/2 2007-06-30 20:28 (:0.0)
after adding entry:
cda pts/1 2007-06-30 21:04 (:0.0)
cda pts/2 2007-06-30 20:28 (:0.0)
after removing entry:
cda pts/1 2007-06-30 21:04 (:0.0)
cda pts/2 2007-06-30 20:28 (:0.0)

The question is, how come nothing gets added to utmp when I run it under xterm on Linux? Ie how come it doesn't show the line

cda pts/3 2007-06-30 20:28 (:0.0)
# 2  
Old 07-01-2007
Wait, never mind. It shows up in the debugger.
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Solaris

Locked out of server due to utmp growing out of control

:(Dear Solaris Experts, The file /var/adm/utmpx is steadily growing on our standbye Sun Sparc T5220 Solaris 10 server. I have tried everything such as the following steps without success: root@rainbow # uname -a SunOS rainbow 5.10 Generic_141444-09 sun4v sparc... (2 Replies)
Discussion started by: gjackson123
2 Replies

2. UNIX for Dummies Questions & Answers

Help Needed using utmp file!

Hi. I am working on a small assignment where i need to extract the login information of currently logged in users in a Linux client-server environment.I am able to extract only the userID,IP/HOST name,TTY,device name,GID,PID and login time using the structure 'utmp'.Also when i am saving the... (2 Replies)
Discussion started by: maverixxx
2 Replies

3. Shell Programming and Scripting

Script needed to select and delete lower case and mixed case records

HELLO ALL, URGENTLY NEEDED A SCRIPT TO SELECT AND DELETE LOWER AND MIXED CASE RECORDS FROM A COLUMN IN A TABLE. FOR EXAMPLE : Table name is EMPLOYEE and the column name is CITY and the CITY column records will be: Newyork washington ... (1 Reply)
Discussion started by: abhilash mn
1 Replies

4. UNIX for Advanced & Expert Users

/etc/utmp file does not get updated with boot up details

In a frequent interval the system bootup is not updating the /etc/utmp file with the system boot details. This leads to blank output of who - b command. What can be the reason for the same? (1 Reply)
Discussion started by: jyoti_mil
1 Replies

5. AIX

utmp files

Hi All, if someone know where I can set dimension of utmp log files like wtmp failedlogin sulog in an AIX system. These are called security logs and they can reach a max amount in day or MB, where can I steady their size ? thanks in advance. (2 Replies)
Discussion started by: Carmen123
2 Replies

6. Programming

utmp ACCOUNTING

the utmp.h ACCOUNTING macro is set to 9 on my system. my question is: what "accounting" is it referring to? (2 Replies)
Discussion started by: thmnetwork
2 Replies

7. Solaris

: /var/adm/utmp exists!

Solaris 8 E420R, 4CPU, 4GB. We get the following message in /var/adm/messages: Feb 22 04:39:43 hostname See utmp(4) for more information Feb 22 05:39:43 hostname /usr/lib/utmpd: WARNING : /var/adm/utmp exists! So I followed the instructions and saw that DESCRIPTION The utmp and... (2 Replies)
Discussion started by: dangral
2 Replies

8. SCO

SCO utmp file

I am tring to recover a SCO system remotely, when I try to login with multiple user support, i get the following message No UTPM entry, you must execute from the lowest level (sh) Can anyone shed some light on this issue. I have never came seen this error before. Also it will allow me to... (1 Reply)
Discussion started by: scott_williams1
1 Replies

9. UNIX for Dummies Questions & Answers

Error login user file utmp

could probably help me with a unix problem. Basicallyu, when the users try to connect to the server they get this messge: No UTMP entry. you must exec "LOGIN" from the lowest level "sh" They are connecting using a windows emulator called TINYTERM. We cannot connect from the console either... (3 Replies)
Discussion started by: jernesto_diaz
3 Replies

10. UNIX for Dummies Questions & Answers

lower case to upper case string conversion in shell script

How can convert a Lower case variable value to an upper case in the kron shell script. (3 Replies)
Discussion started by: dchalavadi
3 Replies
Login or Register to Ask a Question