server: Define a generic context structure instead of using the platform-specific version.
diff --git a/server/thread.h b/server/thread.h
index 2e33470..b6c1cf5 100644
--- a/server/thread.h
+++ b/server/thread.h
@@ -76,8 +76,8 @@
int exit_code; /* thread exit code */
int unix_pid; /* Unix pid of client */
int unix_tid; /* Unix tid of client */
- CONTEXT *context; /* current context if in an exception handler */
- CONTEXT *suspend_context; /* current context if suspended */
+ context_t *context; /* current context if in an exception handler */
+ context_t *suspend_context; /* current context if suspended */
client_ptr_t teb; /* TEB address (in client address space) */
affinity_t affinity; /* affinity mask */
int priority; /* priority level */
@@ -119,17 +119,11 @@
extern struct thread_snapshot *thread_snap( int *count );
extern struct token *thread_get_impersonation_token( struct thread *thread );
-/* CPU context functions */
-extern void copy_context( CONTEXT *to, const CONTEXT *from, unsigned int flags );
-extern client_ptr_t get_context_ip( const CONTEXT *context );
-extern unsigned int get_context_cpu_flag(void);
-extern unsigned int get_context_system_regs( unsigned int flags );
-
/* ptrace functions */
extern void sigchld_callback(void);
-extern void get_thread_context( struct thread *thread, CONTEXT *context, unsigned int flags );
-extern void set_thread_context( struct thread *thread, const CONTEXT *context, unsigned int flags );
+extern void get_thread_context( struct thread *thread, context_t *context, unsigned int flags );
+extern void set_thread_context( struct thread *thread, const context_t *context, unsigned int flags );
extern int send_thread_signal( struct thread *thread, int sig );
extern void get_selector_entry( struct thread *thread, int entry, unsigned int *base,
unsigned int *limit, unsigned char *flags );