큐메일 컴파일시 'warning'
글쓴이: neoprog / 작성시간: 금, 2004/12/10 - 2:09오후
큐메일을 설치중입니다. 그런데.. 오늘..
qmail.kldp.org
사이트가 안돼네요.
MySQL 버젼은
mysql-standard-4.0.17-pc-linux-i686 바이너리이구요,
RedHat 9 입니다.
자유게시판에 김정균님이 올리신 글을 찾았습니다.... T_T
김정균 wrote:
people server 에 문제가 있는데, 관리자가 연락이 되지 않습니다.
순선씨는 이글 보거든 전화좀 주세요. 전화를 받지 않으시네요.
일단 switch 에서 port 를 차단한 상태입니다. :-)P.S
드디어 무소불위의 권력을 행사하는 군요. 크크
어쨋거나,
checkpassword0.90 + checkpassword-mysql-0.7.4 patch 를 설치중입니다. 컴파일시 아래와 같은 'warning'이 나오구요, 이상태로 설치를 하면
pop3로그인시 'id+도메인' 로그인이 안돼더라구요. 이게 'warning'때문인지는
확실치 않구요, 설치시에 warning이 있길래 이것때문이 아닌지 추측할뿐입니다.
제가 프로그램에는 젠병이라 혹시라도 아시는 분이 계시다면 도와주십시요~~ :!:
checkpassword.c: In function `doit_my':
checkpassword.c:52: warning: assignment makes pointer from integer without a cast
mysql.c: In function `My_CheckUser':
mysql.c:450: warning: assignment discards qualifiers from pointer target type
mysql.c:506: warning: passing arg 2 of `strcmp' makes pointer from integer without a cast
In file included from /usr/local/include/mysql/my_global.h:276,
from md5.c:35:
/usr/include/asm/atomic.h:40:2: warning: #warning Using kernel header in userland program. BAD!
checkpassword.c doit_my function 부분
(My_CheckUser 부분이 52line)
/***********************************/
char *stored;
/*---- check MySQL ----*/
int doit_my(login, mid, passwd)
char *login, *mid, *passwd;
{
char *myerror;
int flag = 0;
if (mysql_use == 1)
{
pw = My_CheckUser(login, mid, pop_or_apop, passwd, &flag, &myerror);
if (pw)
{
stored = pw->pw_passwd;
}
}
if ( *(myerror) != '\0' ) {
syslog(LOG_ERR, "MySQL Query Error. %s", myerror);
}
return flag;
}
mysql.c 소스중
450 line( *myerror = mysql_error(mysql); )
My_CheckUser(char *id, char *mid, int pop_or_apop, char *passwd, int *flag, char **myerror)
{
....
....
if ( mysql_query(mysql, buf) < 0 || !(result=mysql_store_result(mysql)) )
{
*myerror = mysql_error(mysql);
*flag = 2;
return(0);
}
506 line...( a = strcmp(ppass, crypt(passwd, ppass)); )
if (pop_or_apop == 1) {
if (row[6] == NULL) { goto error_exit; }
if (strcmp(ppass, row[6]) != 0) { *flag = 3; goto error_exit3; }
}
else
{
switch (enc_type)
{
case PLAINTEXT_ENCRYPTION_FLAG:
a = strcmp(ppass, passwd);
break;
case CRYPT_DES_ENCRYPTION_FLAG:
a = strcmp(ppass, crypt(passwd, ppass));
break;
case MYSQL_ENCRYPTION_FLAG:
if (row[6] == NULL) { goto error_exit; }
a = strcmp(ppass, row[6]);
break;
case MD5_ENCRYPTION_FLAG:
md5crypt(passwd, buf);
a = strcmp(ppass, buf);
break;
default:
goto error_exit;
break;
}
if (a!=0) { *flag = 3; goto error_exit3; }
}
Forums:


댓글 달기