1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331
|
Description: <short summary of the patch>
TODO: Put a short summary on the line above and replace this paragraph
with a longer explanation of this change. Complete the meta-information
with other relevant fields (see below for details). To make it easier, the
information below has been extracted from the changelog. Adjust it or drop
it.
.
xtv (1.1-15) unstable; urgency=medium
.
* packaging updates, just version bumping and repo swizzling
Author: Barak A. Pearlmutter <bap@debian.org>
---
The information above should follow the Patch Tagging Guidelines, please
checkout http://dep.debian.net/deps/dep3/ to learn about the format. Here
are templates for supplementary fields that you might want to add:
Origin: <vendor|upstream|other>, <url of original patch>
Bug: <url in upstream bugtracker>
Bug-Debian: https://bugs.debian.org/<bugnumber>
Bug-Ubuntu: https://launchpad.net/bugs/<bugnumber>
Forwarded: <no|not-needed|url proving that it has been forwarded>
Reviewed-By: <name and email of someone who approved the patch>
Last-Update: 2018-03-28
--- xtv-1.1.orig/Grab.c
+++ xtv-1.1/Grab.c
@@ -1,9 +1,9 @@
/*
** Grab.c for XmtdsGrab widget in .
-**
+**
** Made by MaxTheDogSays (dubray_f@epita.fr && rancur_v@epita.fr
** Login <vr@epita.fr>
-**
+**
** Started on Mon May 16 22:24:08 1994 vr
** Last update Tue Apr 4 02:31:06 1995 mtds
*/
@@ -11,6 +11,7 @@
#include <X11/IntrinsicP.h>
#include <X11/StringDefs.h>
#include <stdio.h>
+#include <stdlib.h>
#include "XmtdsI.h"
#include "GrabP.h"
@@ -38,36 +39,36 @@ XmtdsGrabClassRec xmtdsGrabClassRec = {
/* core */
(WidgetClass)&widgetClassRec, /* superclass */
"XmtdsGrab", /* class name */
- sizeof(XmtdsGrabRec), /* size */
- NULL, /* class initialize */
- NULL, /* class_part_init */
- FALSE, /* class_inited */
- Initialize, /* initialize */
- NULL, /* initialize_hook */
- XtInheritRealize, /* realize */
- NULL, /* actions */
- 0, /* num_actions */
- resources, /* resources */
- XtNumber(resources), /* resource_count */
- NULLQUARK, /* xrm_class */
- TRUE, /* compress_motion */
- TRUE, /* compress_exposure */
- TRUE, /* compress_enterleave */
- FALSE, /* visible_interest */
- Destroy, /* destroy */
- NULL, /* resize */
- Redisplay, /* expose */
- NULL, /* set_values */
- NULL, /* set_values_hook */
- XtInheritSetValuesAlmost, /* set_values_almost */
- NULL, /* get_values_hook */
- NULL, /* accept_focus */
- XtVersion, /* version */
- NULL, /* callback_private */
- NULL, /* tm_table */
- XtInheritQueryGeometry, /* query_geometry */
- XtInheritDisplayAccelerator, /* display_accelerator */
- NULL, /* extension */
+ sizeof(XmtdsGrabRec), /* size */
+ NULL, /* class initialize */
+ NULL, /* class_part_init */
+ FALSE, /* class_inited */
+ Initialize, /* initialize */
+ NULL, /* initialize_hook */
+ XtInheritRealize, /* realize */
+ NULL, /* actions */
+ 0, /* num_actions */
+ resources, /* resources */
+ XtNumber(resources), /* resource_count */
+ NULLQUARK, /* xrm_class */
+ TRUE, /* compress_motion */
+ TRUE, /* compress_exposure */
+ TRUE, /* compress_enterleave */
+ FALSE, /* visible_interest */
+ Destroy, /* destroy */
+ NULL, /* resize */
+ Redisplay, /* expose */
+ NULL, /* set_values */
+ NULL, /* set_values_hook */
+ XtInheritSetValuesAlmost, /* set_values_almost */
+ NULL, /* get_values_hook */
+ NULL, /* accept_focus */
+ XtVersion, /* version */
+ NULL, /* callback_private */
+ NULL, /* tm_table */
+ XtInheritQueryGeometry, /* query_geometry */
+ XtInheritDisplayAccelerator, /* display_accelerator */
+ NULL, /* extension */
},
/* xmtds_grab */
{
@@ -84,9 +85,9 @@ ArgList args;
Cardinal *num_args;
{
XGCValues xgcv;
-
+
if ((NEW_GRAB.display =
- XOpenDisplay((unsigned char *)NEW_GRAB.display_name)) == NULL)
+ XOpenDisplay((char *)NEW_GRAB.display_name)) == NULL)
{
XtWarning("can't open display");
exit(-1);
@@ -138,7 +139,7 @@ XtIntervalId *id;
{
Dimension width;
Dimension height;
-
+
#ifdef SYNC
XSync(XtDisplay(w),FALSE);
#endif /* SYNC */
@@ -146,7 +147,7 @@ XtIntervalId *id;
XtNwidth, &width,
XtNheight, &height,
NULL);
- copy(w,ABS(CORE.x),ABS(CORE.y),width,height);
+ copy(w,ABS(CORE.x),ABS(CORE.y),width,height);
GRAB.xt_interval_id =
XtAppAddTimeOut(XtWidgetToApplicationContext((Widget)w),
GRAB.interval,
@@ -164,7 +165,7 @@ Dimension height;
XImage *image;
Dimension dpy_width;
Dimension dpy_height;
-
+
dpy_width = DisplayWidth(GRAB.display,DefaultScreen(GRAB.display));
dpy_height = DisplayHeight(GRAB.display,DefaultScreen(GRAB.display));
if ((x + width) > dpy_width)
@@ -189,7 +190,6 @@ Dimension height;
x,
y,
width,
- height);
+ height);
XDestroyImage(image);
}
-
--- xtv-1.1.orig/Imakefile
+++ xtv-1.1/Imakefile
@@ -1,23 +1,8 @@
-#
-# Imakefile for xtetris in .
-#
-# Made by MaxTheDogSays (dubray_f@epita.fr && rancur_v@epita.fr
-# Login <vr@epita.fr>
-#
-# Started on Sat Jun 25 15:43:45 1994 vr
-# Last update Tue Apr 4 02:11:36 1995 mtds
-#
+# Imakefile for xtv.
- SRCS = xtv.c Grab.c
+SRCS = xtv.c Grab.c
+OBJS = xtv.o Grab.o
- OBJS = xtv.o Grab.o
-
- CDEBUGFLAGS = -g
- DEPLIBS =
-
-
- DEFINES =
-LOCAL_LIBRARIES = -lXaw -lXext -lXmu -lXt -lX11
+LOCAL_LIBRARIES = -lXaw -lXt -lX11
ComplexProgramTarget(xtv)
-InstallAppDefaults(XTv)
--- /dev/null
+++ xtv-1.1/README
@@ -0,0 +1,41 @@
+Assuming you want to display on $DISPLAY what is on the display
+$VICTIM, then you go
+
+ xtv -d $VICTIM
+
+NOTE: you must have appropriate permissions. You can test with
+
+ xlsclient -display $VICTIM
+
+To deal with permissions, assuming $VHOST is the host on which the
+$VICTIM display resides, and ~vic is the home directory of the victim,
+you can do this:
+
+ ssh -X -a root@$VHOST
+ export VICTIM=:0.0 # or whatever
+ xauth add `xauth -f ~vic/.Xauthority list $VICTIM`
+ xtv -d $VICTIM
+
+Other potentially less secure methods would include editing
+/etc/X11/xinit/xserverrc on $VHOST to remove "-nolisten tcp",
+restarting the X server there, and doing an "xhost + $DISPLAYHOST"
+
+One use for xtv aside from spying on people without their knowledge,
+is so students in a computer classroom can see everything on the
+instructor's screen on their own, which can be much easier on the eyes
+than a distant fuzzy projector.
+
+ WARNING: be careful with "xhost + host-evil-person-can-log-onto"
+ because you leave $VICTIM open to various attacks. It is equivalent
+ to letting anyone who can log onto host-evil-person-can-log-onto sit
+ at the $VICTIM display and type whatever they want unobserved. This
+ is of particular relevance in an academic setting, where a nasty
+ person could remotely log onto student-machine, so if you've done an
+ "xhost + student-machine" be aware that people other than the person
+ actually sitting at that machine can potentially do nasties through
+ it.
+
+The "right" way to let students see your display is to give each of
+them access to an account on your machine (can be shared) using a
+secure mechanism, and using xauth commands of the sort shown above to
+let people who "ssh -X" into that account access its :0.0 display.
--- xtv-1.1.orig/XmtdsI.h
+++ xtv-1.1/XmtdsI.h
@@ -1,9 +1,9 @@
/*
** XmtdsI.h for Xmtds
-**
+**
** Made by MaxTheDogSays (dubray_f@epita.fr && rancur_v@epita.fr)
** Login <mtds@epita.fr>
-**
+**
** Started on Thu Jan 12 23:27:08 1995 mtds
** Last update Thu Jan 12 23:37:46 1995 mtds
*/
@@ -17,26 +17,26 @@
void *malloc();
void *realloc();
-#define EXIT_FAILURE exit(255)
+#define EXIT_FAIL exit(255)
#define EXIT_SUCCEED exit(0)
#define BUF_SIZE 512
#define SYSCALL_ERROR(syscall) {perror(syscall);fprintf(stderr,"%s %d\n",\
__FILE__,__LINE__);\
- EXIT_FAILURE;}
+ EXIT_FAIL;}
#define MALLOC(ptr,size,comm) {if (((ptr) = malloc(size)) == NULL)\
{perror("malloc");\
printf("File %s Line %d : %s\n",\
__FILE__,__LINE__,comm);\
- EXIT_FAILURE;}}
+ EXIT_FAIL;}}
#define REALLOC(ptr,size,comm) {if (((ptr) = realloc((ptr),(size))) == NULL)\
{perror("realloc");\
printf("File %s Line %d : %s\n",\
__FILE__,__LINE__,comm);\
- EXIT_FAILURE;}}
+ EXIT_FAIL;}}
/* Xlib */
#define LOOKUP_STRING_BUFSIZ 512
--- xtv-1.1.orig/xtv.c
+++ xtv-1.1/xtv.c
@@ -1,14 +1,16 @@
/*
** xtv.c for Mtds in .
**
-** Made by MaxTheDogSays (dubray_f@epita.fr && rancur_v@epita.fr
+** Made by MaxTheDogSays (dubray_f@epita.fr && rancur_v@epita.fr)
** Login <mtds@epita.fr>
**
** Started on Tue May 3 23:29:35 1994 mtds
-** Last update Tue Apr 4 02:19:53 1995 mtds
+** Updated on Tue Apr 4 02:19:53 1995 mtds
+** Minor mods Sun Oct 7 13:42:49 MDT 2001 bap@cs.unm.edu
*/
#include <stdio.h>
+#include <stdlib.h>
#include <X11/Intrinsic.h>
#include <X11/StringDefs.h>
#include <X11/Xaw/Viewport.h>
@@ -29,9 +31,13 @@ static XrmOptionDescRec options[] =
XrmoptionSepArg, NULL}
};
-int main(argc,argv)
-int argc;
-char **argv;
+void usage()
+{
+ fprintf(stderr,"usage: xtv [-s refresh_timeout] [-d display]\n");
+ exit(255);
+}
+
+int main(int argc, char **argv)
{
appl app;
Widget viewport;
@@ -64,10 +70,5 @@ char **argv;
XtManageChild(viewport);
XtRealizeWidget(app.toplevel);
XtAppMainLoop(app.app_context);
-}
-
-int usage()
-{
- fprintf(stderr,"usage: xtv [-s refresh_timeout] [-d display]\n");
- exit(255);
+ return 0;
}
|