Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
W
wine-winehq
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Registry
Registry
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
wine
wine-winehq
Commits
f727b432
Commit
f727b432
authored
Jan 19, 1999
by
Alexandre Julliard
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Added server-side device support (only a hack for now).
parent
8da12c43
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
80 additions
and
0 deletions
+80
-0
Makefile.in
server/Makefile.in
+1
-0
device.c
server/device.c
+79
-0
No files found.
server/Makefile.in
View file @
f727b432
...
...
@@ -8,6 +8,7 @@ MODULE = server
C_SRCS
=
\
change.c
\
console.c
\
device.c
\
event.c
\
file.c
\
mapping.c
\
...
...
server/device.c
0 → 100644
View file @
f727b432
/*
* Server-side device management
*
* Copyright (C) 1999 Alexandre Julliard
*/
/*
* FIXME:
* all this stuff is a simple hack to avoid breaking
* client-side device support.
*/
#include <assert.h>
#include <fcntl.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include "winerror.h"
#include "winnt.h"
#include "server/thread.h"
struct
device
{
struct
object
obj
;
/* object header */
int
id
;
/* client identifier */
};
static
void
device_dump
(
struct
object
*
obj
,
int
verbose
);
static
int
device_get_info
(
struct
object
*
obj
,
struct
get_file_info_reply
*
reply
);
static
void
device_destroy
(
struct
object
*
obj
);
static
const
struct
object_ops
device_ops
=
{
device_dump
,
no_add_queue
,
NULL
,
/* should never get called */
NULL
,
/* should never get called */
NULL
,
/* should never get called */
no_read_fd
,
no_write_fd
,
no_flush
,
device_get_info
,
device_destroy
};
struct
object
*
create_device
(
int
id
)
{
struct
device
*
dev
;
if
(
!
(
dev
=
mem_alloc
(
sizeof
(
*
dev
))))
return
NULL
;
init_object
(
&
dev
->
obj
,
&
device_ops
,
NULL
);
dev
->
id
=
id
;
return
&
dev
->
obj
;
}
static
void
device_dump
(
struct
object
*
obj
,
int
verbose
)
{
struct
device
*
dev
=
(
struct
device
*
)
obj
;
assert
(
obj
->
ops
==
&
device_ops
);
fprintf
(
stderr
,
"Device id=%08x
\n
"
,
dev
->
id
);
}
static
int
device_get_info
(
struct
object
*
obj
,
struct
get_file_info_reply
*
reply
)
{
struct
device
*
dev
=
(
struct
device
*
)
obj
;
assert
(
obj
->
ops
==
&
device_ops
);
memset
(
reply
,
0
,
sizeof
(
*
reply
)
);
reply
->
type
=
FILE_TYPE_UNKNOWN
;
reply
->
attr
=
dev
->
id
;
/* hack! */
return
1
;
}
static
void
device_destroy
(
struct
object
*
obj
)
{
struct
device
*
dev
=
(
struct
device
*
)
obj
;
assert
(
obj
->
ops
==
&
device_ops
);
free
(
dev
);
}
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment