+ Responder ao Tópico



  1. #1
    zeomar
    Visitante

    Padrão ajuda para utilizar a biblioteca pwd.h

    Ae pessoal,

    Estou precisando de uma ajuda. Recentemente comecei a programar C em Linux.
    Preciso verificar a senha de um determinado login dentro do meu programa. para isso eu tive a ideia de usar a funcao 'struct passwd *getpwnam(const char *)' em q vc passa o login e ela devolve um struct passwd.
    Bom defini uma variavel para 'passwd' e fiz o '#include <pwd.h>' onde esta definida a funcao e o struct.
    #include <pwd.h>
    passwd *senha;
    senha = getpwnam("nome");

    O problema e o seguinte: quando eu compilo aparece o erro q passwd nao esta declarado.
    O que pode estar causando esse problema?

    :toim:

  2. #2
    veiga
    Visitante

    Padrão Re: ajuda para utilizar a biblioteca pwd.h

    Citação Postado originalmente por zeomar
    Ae pessoal,

    Estou precisando de uma ajuda. Recentemente comecei a programar C em Linux.
    Preciso verificar a senha de um determinado login dentro do meu programa. para isso eu tive a ideia de usar a funcao 'struct passwd *getpwnam(const char *)' em q vc passa o login e ela devolve um struct passwd.
    Bom defini uma variavel para 'passwd' e fiz o '#include <pwd.h>' onde esta definida a funcao e o struct.
    #include <pwd.h>
    passwd *senha;
    senha = getpwnam("nome");

    O problema e o seguinte: quando eu compilo aparece o erro q passwd nao esta declarado.
    O que pode estar causando esse problema?

    :toim:
    faltou colocar um struct antes de passwd.

    Código :
    #include <pwd.h>
    #include <sys/types.h>
     
    struct passwd *senha;
    senha = getpwnam("nome");

    qualquer coisa da um man getpwnam


    feito!

  3. #3
    zeomar
    Visitante

    Padrão valeu

    8)

    Valeu pela ajuda cara, mas acabei descobrindo q o erro era outro.
    faltou o '-I/usr/libs' no gcc

    depois disso funcionou