~ubuntu-branches/ubuntu/trusty/util-linux/trusty-proposed

« back to all changes in this revision

Viewing changes to sys-utils/ipcs.c

  • Committer: Package Import Robot
  • Author(s): LaMont Jones
  • Date: 2011-11-03 15:38:23 UTC
  • mto: (4.5.5 sid) (1.6.4)
  • mto: This revision was merged to the branch mainline in revision 85.
  • Revision ID: package-import@ubuntu.com-20111103153823-10sx16jprzxlhkqf
ImportĀ upstreamĀ versionĀ 2.20.1

Show diffs side-by-side

added added

removed removed

Lines of Context:
26
26
#include <pwd.h>
27
27
#include <grp.h>
28
28
#include <unistd.h>
29
 
#include <err.h>
30
29
#include <sys/types.h>
31
30
#include <sys/ipc.h>
32
31
#include <sys/sem.h>
34
33
#include <sys/shm.h>
35
34
 
36
35
#include "nls.h"
 
36
#include "c.h"
37
37
 
38
38
/*-------------------------------------------------------------------*/
39
39
/* SHM_DEST and SHM_LOCKED are defined in kernel headers,
196
196
                }
197
197
        }
198
198
 
 
199
 
199
200
        if  (print) {
200
 
                if (shm)
 
201
                if (shm)
201
202
                        print_shm (id);
202
 
                else if (sem)
 
203
                if (sem)
203
204
                        print_sem (id);
204
 
                else if (msg)
 
205
                if (msg)
205
206
                        print_msg (id);
206
 
                else
 
207
                if (!shm && !sem && !msg )
207
208
                        usage (EXIT_FAILURE);
208
209
        } else {
209
210
                if ( !shm && !msg && !sem)
237
238
        if ((pw = getpwuid(ipcp->cuid)))
238
239
                printf(" %-10s", pw->pw_name);
239
240
        else
240
 
                printf(" %-10d", ipcp->cuid);
 
241
                printf(" %-10u", ipcp->cuid);
241
242
        if ((gr = getgrgid(ipcp->cgid)))
242
243
                printf(" %-10s", gr->gr_name);
243
244
        else
244
 
                printf(" %-10d", ipcp->cgid);
 
245
                printf(" %-10u", ipcp->cgid);
245
246
 
246
247
        if ((pw = getpwuid(ipcp->uid)))
247
248
                printf(" %-10s", pw->pw_name);
248
249
        else
249
 
                printf(" %-10d", ipcp->uid);
 
250
                printf(" %-10u", ipcp->uid);
250
251
        if ((gr = getgrgid(ipcp->gid)))
251
252
                printf(" %-10s\n", gr->gr_name);
252
253
        else
253
 
                printf(" %-10d\n", ipcp->gid);
 
254
                printf(" %-10u\n", ipcp->gid);
254
255
}
255
256
 
256
257
 
351
352
                        if (pw)
352
353
                                printf ("%-10d %-10.10s", shmid, pw->pw_name);
353
354
                        else
354
 
                                printf ("%-10d %-10d", shmid, ipcp->uid);
 
355
                                printf ("%-10d %-10u", shmid, ipcp->uid);
355
356
                        /* ctime uses static buffer: use separate calls */
356
357
                        printf(" %-20.16s", shmseg.shm_atime
357
358
                               ? ctime(&shmseg.shm_atime) + 4 : _("Not set"));
364
365
                        if (pw)
365
366
                                printf ("%-10d %-10.10s", shmid, pw->pw_name);
366
367
                        else
367
 
                                printf ("%-10d %-10d", shmid, ipcp->uid);
 
368
                                printf ("%-10d %-10u", shmid, ipcp->uid);
368
369
                        printf (" %-10d %-10d\n",
369
370
                                shmseg.shm_cpid, shmseg.shm_lpid);
370
371
                        break;
374
375
                        if (pw)
375
376
                                printf ("%-10d %-10.10s", shmid, pw->pw_name);
376
377
                        else
377
 
                                printf ("%-10d %-10d", shmid, ipcp->uid);
 
378
                                printf ("%-10d %-10u", shmid, ipcp->uid);
378
379
                        printf (" %-10o %-10lu %-10ld %-6s %-6s\n",
379
380
                                ipcp->mode & 0777,
380
381
                                /*
467
468
                        if (pw)
468
469
                                printf ("%-8d %-10.10s", semid, pw->pw_name);
469
470
                        else
470
 
                                printf ("%-8d %-10d", semid, ipcp->uid);
 
471
                                printf ("%-8d %-10u", semid, ipcp->uid);
471
472
                        printf ("  %-26.24s", semary.sem_otime
472
473
                                ? ctime(&semary.sem_otime) : _("Not set"));
473
474
                        printf (" %-26.24s\n", semary.sem_ctime
481
482
                        if (pw)
482
483
                                printf ("%-10d %-10.10s", semid, pw->pw_name);
483
484
                        else
484
 
                                printf ("%-10d %-10d", semid, ipcp->uid);
 
485
                                printf ("%-10d %-10u", semid, ipcp->uid);
485
486
                        printf (" %-10o %-10ld\n",
486
487
                                ipcp->mode & 0777,
487
488
                                /*
568
569
                        if (pw)
569
570
                                printf ("%-8d %-10.10s", msqid, pw->pw_name);
570
571
                        else
571
 
                                printf ("%-8d %-10d", msqid, ipcp->uid);
 
572
                                printf ("%-8d %-10u", msqid, ipcp->uid);
572
573
                        printf (" %-20.16s", msgque.msg_stime
573
574
                                ? ctime(&msgque.msg_stime) + 4 : _("Not set"));
574
575
                        printf (" %-20.16s", msgque.msg_rtime
580
581
                        if (pw)
581
582
                                printf ("%-8d %-10.10s", msqid, pw->pw_name);
582
583
                        else
583
 
                                printf ("%-8d %-10d", msqid, ipcp->uid);
 
584
                                printf ("%-8d %-10u", msqid, ipcp->uid);
584
585
                        printf ("  %5d     %5d\n",
585
586
                                msgque.msg_lspid, msgque.msg_lrpid);
586
587
                        break;
590
591
                        if (pw)
591
592
                                printf ("%-10d %-10.10s", msqid, pw->pw_name);
592
593
                        else
593
 
                                printf ("%-10d %-10d", msqid, ipcp->uid);
 
594
                                printf ("%-10d %-10u", msqid, ipcp->uid);
594
595
                        printf (" %-10o %-12ld %-12ld\n",
595
596
                                ipcp->mode & 0777,
596
597
                                /*
617
618
                err(EXIT_FAILURE, _("shmctl failed"));
618
619
 
619
620
        printf (_("\nShared memory Segment shmid=%d\n"), shmid);
620
 
        printf (_("uid=%d\tgid=%d\tcuid=%d\tcgid=%d\n"),
 
621
        printf (_("uid=%u\tgid=%u\tcuid=%u\tcgid=%u\n"),
621
622
                ipcp->uid, ipcp->gid, ipcp->cuid, ipcp->cgid);
622
623
        printf (_("mode=%#o\taccess_perms=%#o\n"),
623
624
                ipcp->mode, ipcp->mode & 0777);
624
 
        printf (_("bytes=%ld\tlpid=%d\tcpid=%d\tnattch=%ld\n"),
625
 
                (long) shmds.shm_segsz, shmds.shm_lpid, shmds.shm_cpid,
 
625
        printf (_("bytes=%lu\tlpid=%d\tcpid=%d\tnattch=%ld\n"),
 
626
                (unsigned long) shmds.shm_segsz, shmds.shm_lpid, shmds.shm_cpid,
626
627
                (long) shmds.shm_nattch);
627
628
        printf (_("att_time=%-26.24s\n"),
628
629
                shmds.shm_atime ? ctime (&shmds.shm_atime) : _("Not set"));
643
644
                err(EXIT_FAILURE, _("msgctl failed"));
644
645
 
645
646
        printf (_("\nMessage Queue msqid=%d\n"), msqid);
646
 
        printf (_("uid=%d\tgid=%d\tcuid=%d\tcgid=%d\tmode=%#o\n"),
 
647
        printf (_("uid=%u\tgid=%u\tcuid=%u\tcgid=%u\tmode=%#o\n"),
647
648
                ipcp->uid, ipcp->gid, ipcp->cuid, ipcp->cgid, ipcp->mode);
648
649
        printf (_("cbytes=%ld\tqbytes=%ld\tqnum=%ld\tlspid=%d\tlrpid=%d\n"),
649
650
                /*
669
670
        struct semid_ds semds;
670
671
        struct ipc_perm *ipcp = &semds.sem_perm;
671
672
        union semun arg;
672
 
        int i;
 
673
        size_t i;
673
674
 
674
675
        arg.buf = &semds;
675
676
        if (semctl (semid, 0, IPC_STAT, arg) < 0)
676
677
                err(EXIT_FAILURE, _("semctl failed"));
677
678
 
678
679
        printf (_("\nSemaphore Array semid=%d\n"), semid);
679
 
        printf (_("uid=%d\t gid=%d\t cuid=%d\t cgid=%d\n"),
 
680
        printf (_("uid=%u\t gid=%u\t cuid=%u\t cgid=%u\n"),
680
681
                ipcp->uid, ipcp->gid, ipcp->cuid, ipcp->cgid);
681
682
        printf (_("mode=%#o, access_perms=%#o\n"),
682
683
                ipcp->mode, ipcp->mode & 0777);
697
698
                if (val < 0 || ncnt < 0 || zcnt < 0 || pid < 0)
698
699
                        err(EXIT_FAILURE, _("semctl failed"));
699
700
 
700
 
                printf ("%-10d %-10d %-10d %-10d %-10d\n",
 
701
                printf ("%-10zd %-10d %-10d %-10d %-10d\n",
701
702
                        i, val, ncnt, zcnt, pid);
702
703
        }
703
704
        printf ("\n");