how to write a wrapper c code to return uid using getuid() function


 
Thread Tools Search this Thread
Top Forums Programming how to write a wrapper c code to return uid using getuid() function
# 1  
Old 05-11-2008
how to write a wrapper c code to return uid using getuid() function

And how to use setuid() ?
thanks
# 2  
Old 05-12-2008
Code:
#include <unistd.h>
uid_t myuid(void)
{
    return getuid();
}

No offense meant, but setuid is a major security risk. Don't go implementing your code on your system unless it is a home desktop that can be trashed.

setuid requires either root or the so-called sticky bit set to allow the program to change it's username.

It may seem simple but there is a lot to writing a setuid program:

http://nob.cs.ucdavis.edu/bishop/sec...sproglogin.pdf
# 3  
Old 05-12-2008
setuid() is pretty integral to a safe unix process.
One basic mode is for a root privileged parent to acquire
resources only it can handle (ports < 1024) and then delegate service to setuid(> 0) children/threads, ala OpenSSH and many other pieces of software via IPC.

Given it's not easy to do securely and does pose a considerable security issue: mostly races and various abuses of unsafe programing practices in the privileged process.
# 4  
Old 05-13-2008
thanks jim mcnamara,
i want catch value of getuid() to put into a logfile. How to do it?
# 5  
Old 05-13-2008
one way:
Code:
id >> logfile

c code
Code:
/* myid.c */
#include <unistd.h>
uid_t myuid(void)
{
    return getuid();
}

int main()
{
     printf("%d\n", myuid() );
     return 0;
}

cc myid.c -o myid

in your script
Code:
myid >> logfile

Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Function - Make your function return an exit status

Hi All, Good Day, seeking for your assistance on how to not perform my 2nd, 3rd,4th etc.. function if my 1st function is in else condition. #Body function1() { if then echo "exist" else echo "not exist" } #if not exist in function1 my all other function will not proceed.... (4 Replies)
Discussion started by: meister29
4 Replies

2. Web Development

Function check_badges($color, $uid, $limit = 300, $_DEBUG = true)

Here is the first draft PHP function to check badges: <?php function check_badges($color, $uid, $limit = 300, $_DEBUG = true) { /* * check_badges() version 0.1 by Neo 9 Jan 2019 * $_COOKIE is not used in this server-side code * but may be used in the browser. ... (0 Replies)
Discussion started by: Neo
0 Replies

3. Shell Programming and Scripting

Return: can only `return' from a function or sourced script

Not sure where the problem is. I can run the script without any issue using the following command. . /opt/app/scripts/cdc_migration.sh But it fails with the below error when I try it this way /opt/app/scripts/cdc_migration.sh /opt/app/scripts/cdc_migration.sh: line 65: return: can only... (1 Reply)
Discussion started by: svajhala
1 Replies

4. Programming

Help with getuid

I'm not that acquainted to C programming and would like to know how to obtain the internal Unix userid of a user (I'm on HP UX) and stro it in a variable. I found the getuid() fonction returns the current user's internal ID. But I would like to find it for a different user. I was hoping... (7 Replies)
Discussion started by: rm-r
7 Replies

5. Programming

Created a wrapper for a function in a class.

I have a class called Parsing with the following function. I want to create a wrapper for it, so that I call it using GetReal rather than GetFloat. Bit confused on how to do this. class Parsing { private: int Length; // int Ptr; ... (3 Replies)
Discussion started by: kristinu
3 Replies

6. Shell Programming and Scripting

Return a value from called function to the calling function

I have two scripts. script1.sh looks -------------------------------- #!/bin/bash display() { echo "Welcome to Unix" } display ----------------------------- Script2.sh #!/bin/bash sh script1.sh //simply calling script1.sh ------------------------------ (1 Reply)
Discussion started by: mvictorvijayan
1 Replies

7. Shell Programming and Scripting

return in function

I am using ksh. I want to know how can we make any function to return string or double value. I dont want to use the global variables. (5 Replies)
Discussion started by: PRKS
5 Replies

8. UNIX for Dummies Questions & Answers

to pick up the Return Code ( RC) from the mailx command and return it to SAS uisng 's

Hi All, Can anyone please let me know the syntax / how to pick up the Return Code ( RC) from the mailx command and return it to SAS uisng 'system()' function and '${?}'. I am in a process to send the mail automatically with an attachment to bulk users. I have used 'Mailx' and 'Unencode'... (0 Replies)
Discussion started by: manas6
0 Replies

9. Shell Programming and Scripting

return value of a function

Hi I have a doubt in the way the variables inside a function are treated . if a function is called from the main script directly, the variables inside them act as global variables. however if the return value of the function is stored to some other variable in the main script as shown,... (3 Replies)
Discussion started by: prez
3 Replies

10. UNIX for Dummies Questions & Answers

What is wrapper script and how to write

hi guys, I have a requirement to run a script 4 times with different parameter values. the 4 jobs have to run parallely which actually access different data of same table and deletes. how can i achieve this.................? Thanks in advance (1 Reply)
Discussion started by: chiru
1 Replies
Login or Register to Ask a Question