version 1.6, 2001/03/21 11:43:45 |
version 1.6.2.4, 2002/06/02 22:56:11 |
|
|
/* $OpenBSD$ */ |
/* $OpenBSD$ */ |
|
|
/* |
/* |
* Copyright (c) 2000 Markus Friedl. All rights reserved. |
* Copyright (c) 2000, 2001 Markus Friedl. All rights reserved. |
* |
* |
* Redistribution and use in source and binary forms, with or without |
* Redistribution and use in source and binary forms, with or without |
* modification, are permitted provided that the following conditions |
* modification, are permitted provided that the following conditions |
|
|
#ifndef SESSION_H |
#ifndef SESSION_H |
#define SESSION_H |
#define SESSION_H |
|
|
void do_authenticated(Authctxt *ac); |
#define TTYSZ 64 |
|
typedef struct Session Session; |
|
struct Session { |
|
int used; |
|
int self; |
|
struct passwd *pw; |
|
Authctxt *authctxt; |
|
pid_t pid; |
|
/* tty */ |
|
char *term; |
|
int ptyfd, ttyfd, ptymaster; |
|
int row, col, xpixel, ypixel; |
|
char tty[TTYSZ]; |
|
/* last login */ |
|
char hostname[MAXHOSTNAMELEN]; |
|
time_t last_login_time; |
|
/* X11 */ |
|
int display_number; |
|
char *display; |
|
int screen; |
|
char *auth_display; |
|
char *auth_proto; |
|
char *auth_data; |
|
int single_connection; |
|
/* proto 2 */ |
|
int chanid; |
|
int is_subsystem; |
|
}; |
|
|
int session_open(int id); |
void do_authenticated(Authctxt *); |
void session_input_channel_req(int id, void *arg); |
|
void session_close_by_pid(pid_t pid, int status); |
|
void session_close_by_channel(int id, void *arg); |
|
|
|
|
int session_open(Authctxt*, int); |
|
int session_input_channel_req(Channel *, const char *); |
|
void session_close_by_pid(pid_t, int); |
|
void session_close_by_channel(int, void *); |
|
void session_destroy_all(void (*)(Session *)); |
|
void session_pty_cleanup2(void *); |
|
|
|
Session *session_new(void); |
|
Session *session_by_tty(char *); |
|
void session_close(Session *); |
|
void do_setusercontext(struct passwd *); |
#endif |
#endif |