/[LeafOK_CVS]/lbbs/src/login.c
ViewVC logotype

Diff of /lbbs/src/login.c

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

Revision 1.45 by sysadm, Tue Jun 17 02:06:48 2025 UTC Revision 1.48 by sysadm, Sat Jun 21 02:15:18 2025 UTC
# Line 14  Line 14 
14   *                                                                         *   *                                                                         *
15   ***************************************************************************/   ***************************************************************************/
16    
 #define _POSIX_C_SOURCE 200112L  
   
 #include "login.h"  
17  #include "bbs.h"  #include "bbs.h"
 #include "user_priv.h"  
18  #include "common.h"  #include "common.h"
19  #include "log.h"  #include "database.h"
20  #include "io.h"  #include "io.h"
21    #include "log.h"
22    #include "login.h"
23  #include "screen.h"  #include "screen.h"
24  #include "database.h"  #include "user_priv.h"
 #include <errno.h>  
25  #include <ctype.h>  #include <ctype.h>
26    #include <errno.h>
27    #include <stdlib.h>
28  #include <string.h>  #include <string.h>
29  #include <regex.h>  #include <regex.h>
 #include <stdlib.h>  
30  #include <unistd.h>  #include <unistd.h>
31  #include <mysql/mysql.h>  #include <mysql/mysql.h>
32    
# Line 517  int user_online_del(MYSQL *db) Line 515  int user_online_del(MYSQL *db)
515    
516          return 0;          return 0;
517  }  }
518    
519    int user_online_update(const char *action)
520    {
521            MYSQL *db = NULL;
522            char sql[SQL_BUFFER_LEN];
523    
524            if (strcmp(BBS_current_action, action) == 0) // No change
525            {
526                    return 0;
527            }
528    
529            strncpy(BBS_current_action, action, sizeof(BBS_current_action) - 1);
530            BBS_current_action[sizeof(BBS_current_action) - 1] = '\0';
531    
532            db = db_open();
533            if (db == NULL)
534            {
535                    log_error("db_open() error: %s\n", mysql_error(db));
536                    return -1;
537            }
538    
539            snprintf(sql, sizeof(sql),
540                             "UPDATE user_online SET current_action = '%s', last_tm=NOW() "
541                             "WHERE SID = 'Telnet_Process_%d'",
542                             BBS_current_action, getpid());
543            if (mysql_query(db, sql) != 0)
544            {
545                    log_error("Update user_online error: %s\n", mysql_error(db));
546                    return -2;
547            }
548    
549            mysql_close(db);
550    
551            return 1;
552    }


Legend:
Removed lines/characters  
Changed lines/characters
  Added lines/characters

webmaster@leafok.com
ViewVC Help
Powered by ViewVC 1.3.0-beta1