mirror of
https://github.com/samba-team/samba.git
synced 2024-12-23 17:34:34 +03:00
r10576: Add testprog for named pipes. Also add GNUmakefile's for cross-compilation
using mingw32
This commit is contained in:
parent
bfd548ca10
commit
30ba8fdc3d
20
testprogs/win32/npecho/GNUmakefile
Executable file
20
testprogs/win32/npecho/GNUmakefile
Executable file
@ -0,0 +1,20 @@
|
||||
INCLUDES=-I.
|
||||
CFLAGS=$(INCLUDES)
|
||||
|
||||
all: npecho_client.exe npecho_server.exe
|
||||
|
||||
CC = i586-mingw32msvc-gcc
|
||||
|
||||
.SUFFIXES: .c .obj
|
||||
|
||||
.c.obj:
|
||||
$(CC) $(CFLAGS) -c $< -o $@
|
||||
|
||||
clean:
|
||||
del *~ *.obj *.exe
|
||||
|
||||
npecho_client.exe: npecho_client.obj
|
||||
npecho_server.exe: npecho_server.obj
|
||||
|
||||
%.exe:
|
||||
$(CC) $(CFLAGS) -o $@ $< $(LIBS)
|
13
testprogs/win32/npecho/NMakefile
Executable file
13
testprogs/win32/npecho/NMakefile
Executable file
@ -0,0 +1,13 @@
|
||||
INCLUDES=-I
|
||||
CFLAGS=$(INCLUDES) -Zi -nologo
|
||||
|
||||
all: npecho_client.exe npecho_server.exe
|
||||
|
||||
clean:
|
||||
del *~ *.obj *.exe
|
||||
|
||||
npecho_client.exe: npecho_client.obj
|
||||
$(CC) $(CFLAGS) -o npecho_client.exe npecho_client.obj $(LIBS)
|
||||
|
||||
npecho_server.exe: npecho_server.obj
|
||||
$(CC) $(CFLAGS) -o npecho_server.exe npecho_server.obj $(LIBS)
|
50
testprogs/win32/npecho/npecho_client.c
Executable file
50
testprogs/win32/npecho/npecho_client.c
Executable file
@ -0,0 +1,50 @@
|
||||
/*
|
||||
* Simple Named Pipe Client
|
||||
* (C) 2005 Jelmer Vernooij <jelmer@samba.org>
|
||||
* Published to the public domain
|
||||
*/
|
||||
|
||||
#include <windows.h>
|
||||
#include <stdio.h>
|
||||
|
||||
#define ECHODATA "Black Dog"
|
||||
|
||||
int main(int argc, char *argv[])
|
||||
{
|
||||
HANDLE h;
|
||||
DWORD numread = 0;
|
||||
char outbuffer[512];
|
||||
|
||||
if (argc == 1) {
|
||||
printf("Usage: %s pipename\n", argv[0]);
|
||||
printf(" Where pipename is something like \\\\servername\\NPECHO\n");
|
||||
return -1;
|
||||
}
|
||||
|
||||
h = CreateFile(argv[1], GENERIC_READ|GENERIC_WRITE, 0, NULL, OPEN_EXISTING, 0, NULL);
|
||||
if (h == INVALID_HANDLE_VALUE) {
|
||||
printf("Error opening: %d\n", GetLastError());
|
||||
return -1;
|
||||
}
|
||||
|
||||
if (!WriteFile(h, ECHODATA, strlen(ECHODATA), NULL, NULL)) {
|
||||
printf("Error writing: %d\n", GetLastError());
|
||||
return -1;
|
||||
}
|
||||
|
||||
if (!ReadFile(h, outbuffer, strlen(ECHODATA), NULL, NULL)) {
|
||||
printf("Error reading: %d\n", GetLastError());
|
||||
return -1;
|
||||
}
|
||||
|
||||
printf("Read: %s\n", outbuffer);
|
||||
|
||||
if (!TransactNamedPipe(h, ECHODATA, strlen(ECHODATA), outbuffer, strlen(ECHODATA), &numread, NULL)) {
|
||||
printf("TransactNamedPipe failed: %d!\n", GetLastError());
|
||||
return -1;
|
||||
}
|
||||
|
||||
printf("Result: %s\n", outbuffer);
|
||||
|
||||
return 0;
|
||||
}
|
15
testprogs/win32/testmailslot/GNUmakefile
Normal file
15
testprogs/win32/testmailslot/GNUmakefile
Normal file
@ -0,0 +1,15 @@
|
||||
INCLUDES=-I.
|
||||
CFLAGS=$(INCLUDES)
|
||||
CC=i586-mingw32msvc-gcc
|
||||
|
||||
all: testmailslot.exe
|
||||
|
||||
clean:
|
||||
rm -f *~ *.obj testmailslot.exe
|
||||
|
||||
.SUFFIXES: .obj .exe .c
|
||||
|
||||
testmailslot.exe: testmailslot.c
|
||||
|
||||
.c.exe:
|
||||
$(CC) $(CFLAGS) -o $@ $^ $(LIBS)
|
Loading…
Reference in New Issue
Block a user