Re: [9fans] Mouse jumps in vmware

2008-12-09 Thread Russ Cox
 Wrong: http://open-vm-tools.sourceforge.net/

  Now maybe somebody will release the code for the /bin/aux/vm* vmware
  tools so we can fix them.

In order to get the information that I used to
write aux/vmware, I signed an NDA that prohibits
me from releasing the source code, regardless
of what VMware has done in the interim.  At the
time, that was the only way to get the information.

That said, the mechanism for backdoor calls into
VMware has completely changed at least twice
since I wrote aux/vmware, which is why it no longer
works very well.  It's no loss to start from scratch.
If I thought the program was still useful today, I might
try to get permission to release it.  But it's just not
useful anymore in any real sense.

Also, the program is pretty small:

vx32% wc *.[chs] mkfile
 84 2061683 all.h
 27  49 289 asmbackdoor.s
 34  83 539 backdoor.c
 16  33 217 calls.c
6421303   10148 fs.c
176 3262224 inout.c
 33  46 392 isvmware.c
 10  13  98 mousepoll.c
224 5513677 msgchan.c
 44  69 554 vmmousepoll.c
 12  11 177 mkfile
   13022690   19998 total
vx32%

I have attached fs.c, which is quite generic
and has no VMware-specific goo.  Maybe
someone will be motivated to fill in the rest
using the latest and greatest VMware API
instead of one from seven and a half years ago.
Or maybe Uriel will just keep whining.

Russ
#include all.h
#include fcall.h
#include thread.h
#include 9p.h

char *mtpt = /mnt/vmware;
char *srvname;
uint time0;

enum
{
	Qroot = 0,
	Qmousepoint,
	Qsnarf,
	Qgui,
	Qdev,
	Qtime,
	Qbintime,
	Qmsg,
};

typedef struct Tab Tab;
struct Tab
{
	int qid;
	char *name;
	uint perm;
	uint vers;
	void (*open)(Req*);
	void (*read)(Req*);
	void (*write)(Req*);
	void (*close)(Fid*);
};

static void
mousepointread(Req *r)
{
	char buf[32];
	Point p;

	p = getmousepoint();
	snprint(buf, sizeof buf, %11d %11d , p.x, p.y);
	readstr(r, buf);
	respond(r, nil);
}

static void
mousepointwrite(Req *r)
{
	char buf[32], *f[3];
	int nf, n;
	Point p;

	n = r-ifcall.count;
	if(n = sizeof buf){
		respond(r, write too large);
		return;
	}
	memmove(buf, r-ifcall.data, n);
	buf[n] = '\0';
	nf = tokenize(buf, f, nelem(f));
	if(nf != 2){
		respond(r, bad point format);
		return;
	}
	p.x = atoi(f[0]);
	p.y = atoi(f[1]);
	setmousepoint(p);
	respond(r, nil);
}

static void
timeread(Req *r)
{
	char buf[32];
	uint sec, microsec, lag;

	gettime(sec, microsec, lag);
	snprint(buf, sizeof buf, %11d , sec);
	readstr(r, buf);
	respond(r, nil);
}

static uvlong uvorder = 0x0001020304050607ULL;
static uchar*
vlong2le(uchar *t, vlong from)
{
	uchar *f, *o;
	int i;

	f = (uchar*)from;
	o = (uchar*)uvorder;
	for(i = 0; i  sizeof(vlong); i++)
		t[i] = f[o[i]];
	return t+sizeof(vlong);
}

static void
bintimeread(Req *r)
{
	uchar *b;
	int i, n;
	uint sec, microsec, lag;
	vlong nsec;

	b = (uchar*)r-ofcall.data;
	n = r-ifcall.count;

	i = 0;
	if(n = 8){
		gettime(sec, microsec, lag);
		nsec = sec*10LL+microsec*1000LL;
		vlong2le(b, nsec);
		i = 8;
	}
	if(n = 16){
		vlong2le(b+8, nsec);
		i = 16;
	}
	if(n = 24){
		vlong2le(b+16, 10LL);
		i = 24;
	}
	r-ofcall.count = i;
	respond(r, nil);
}

char *snarf;
int nsnarf;
char *tsnarf;
int ntsnarf;

static void
snarfread(Req *r)
{
	int i;

	if(r-ifcall.offset == 0){
		if(snarf)
			free(snarf);
		nsnarf = getsnarflength();
		snarf = emalloc9p(nsnarf+4+1);
		for(i=0; insnarf; i+=4)
			*(uint*)(snarf+i) = getsnarfpiece();
		snarf[nsnarf] = '\0';
		nsnarf = strlen(snarf);	/* there's extra crap because we have to transfer 4 bytes at a time */
	}

	readbuf(r, snarf, nsnarf);
	respond(r, nil);
}

static void
snarfwrite(Req *r)
{
	if(r-ifcall.offset == 0){
		free(tsnarf);
		tsnarf = nil;
		ntsnarf = 0;
	}
	if(r-ifcall.offset  100*1024){
		respond(r, snarf buffer too long);
		return;
	}
	tsnarf = erealloc9p(tsnarf, ntsnarf+r-ifcall.count);
	memmove(tsnarf+ntsnarf, r-ifcall.data, r-ifcall.count);
	ntsnarf += r-ifcall.count;
	r-ofcall.count = r-ifcall.count;
	respond(r, nil);
}

static void
snarfclose(Fid *fid)
{
	int i;

	if((fid-omode3) == OREAD)
		return;

	setsnarflength(ntsnarf);
	for(i=0; intsnarf; i+=4)
		setsnarfpiece(*(uint*)(tsnarf+i));
	free(tsnarf);
	tsnarf = nil;
	ntsnarf = 0;
}

typedef struct Bit Bit;
struct Bit 
{
	char *name;
	uint bit;
};

Bit guibit[] = {
	autograb,	1,
	autorelease,	2,
	autoscroll,	4,
	autoraise,	8,
	copypaste,	0x10,
	hidecursor,	0x20,
	fullscreen,	0x40,
	tofullscreen,	0x80,
	towindow,	0x100,
	autoraise-disabled,	0x200,
	synctime,	0x400,
};

static void
guiread(Req *r)
{
	int i;
	char *s;
	Fmt fmt;
	uint val;

	val = getguistate();
	fmtstrinit(fmt);
	for(i=0; inelem(guibit); i++)
		fmtprint(fmt, %s %s\n, guibit[i].name, (val  guibit[i].bit) ? on : off);
	s = fmtstrflush(fmt);
	readstr(r, s);
	free(s);
	respond(r, nil);
}

static void
guiwrite(Req *r)
{
	int i, on;
	uint v;
	Cmdbuf *cb;

	cb = parsecmd(r-ifcall.data, r-ifcall.count);
	

[9fans] [OT] poetry [was Re: Fwd: Drawterm problems]

2008-12-09 Thread Skip Tavakkolian
 If you update from the CVS repository
 it should build and run just fine.
 If not, please let me know.
 
 Russ

or -- with a very slightly modification --  in verse :)

if you update from the CVS
it should build and run just fine
if not, please let me know,
i will check it one more time




[9fans] 9vx on x86-64

2008-12-09 Thread Russ Cox
9vx now builds and runs on Ubuntu Linux x86-64,
and hopefully other Linuxes as well.
It also runs gs and ape/psh correctly.
I haven't built new binaries nor a new distribution.
Soon; perhaps tomorrow.

Russ



Re: [9fans] troff bibliography

2008-12-09 Thread cej
seems like doref() does it all...

++pac

winmail.dat

Re: [9fans] troff bibliography

2008-12-09 Thread Pietro Gagliardi

On Dec 9, 2008, at 6:23 AM, [EMAIL PROTECTED] wrote:



Hi,
how do I publish complete bibliographies w/ refer | troff?
(on loonix I use this:
/usr/bin/refer  -B bib |  nroff -mbib
but with refer and tmac.bib from heirloom-doctools: the -B option is  
essential

(beat me for still using loonix))

thanks,
++pac.




You can get V7 refer from /n/sources/contrib/forsyth/refer.tgz.



PGP.sig
Description: This is a digitally signed message part


[9fans] troff bibliography

2008-12-09 Thread cej

Hi,
how do I publish complete bibliographies w/ refer | troff?
(on loonix I use this:
/usr/bin/refer  -B bib |  nroff -mbib
but with refer and tmac.bib from heirloom-doctools: the -B option is essential
(beat me for still using loonix))

thanks,
++pac.




Re: [9fans] troff bibliography

2008-12-09 Thread cej

yes. i have it, but it does not work due to the lack of -B switch. i took and 
edited the tmac.bib from heirloom sources, however -B in refer seems to be 
essentiali'm diving into heirloom refer2.c to see what -B does...
thanks,

++pac.


-Original Message-
From: [EMAIL PROTECTED] on behalf of Pietro Gagliardi
Sent: Tue 12/9/2008 12:33 PM
To: Fans of the OS Plan 9 from Bell Labs
Subject: Re: [9fans] troff bibliography
 
On Dec 9, 2008, at 6:23 AM, [EMAIL PROTECTED] wrote:


 Hi,
 how do I publish complete bibliographies w/ refer | troff?
 (on loonix I use this:
 /usr/bin/refer  -B bib |  nroff -mbib
 but with refer and tmac.bib from heirloom-doctools: the -B option is  
 essential
 (beat me for still using loonix))

 thanks,
 ++pac.



You can get V7 refer from /n/sources/contrib/forsyth/refer.tgz.


winmail.dat

Re: [9fans] Fwd: Drawterm problems

2008-12-09 Thread Randall Bohn
I've built drawterm successfully from the CVS sources on Ubuntu x86
and Gentoo x86. It also builds on Win32 if you install Mingw and MSYS
(in that order). I use devfs_win32.c from /n/sources/contrib/
cinap_lenrek.

rsbohn



Re: [9fans] Can somebody tell me the EXACT commands I need to use for

2008-12-09 Thread erik quanstrom
 Ok, I use gmail so my imap is: *imap.gmail.com*, and my smtp is: *
 smtp.gmail.com* .
 Can somebody tell me the exact commands to get mail on plan 9

to read mail, it would be 

upas/fs -f /imaps/imap.gmal.com/$gmailuser

you send mail, you want to modify the last line of /mail/lib/remotemail
to be something like

exec /bin/upas/smtp -sa -u $gmailuser -h $fd tcp!smtp.gmail.com!smtp 
$sender $*

i'm guessing that you'll need tls (-s) and authentication (-a).
you'll need to arrange that the factotum smtp sees running from cron
has the right keys to authenticate to gmail's smtpd.

- erik




[9fans] Can somebody tell me the EXACT commands I need to use for getting email on Plan9

2008-12-09 Thread Nolan Hamilton
Ok, I use gmail so my imap is: *imap.gmail.com*, and my smtp is: *
smtp.gmail.com* .
Can somebody tell me the exact commands to get mail on plan 9

Thanks


Re: [9fans] Can somebody tell me the EXACT commands I need to use

2008-12-09 Thread erik quanstrom
 you'll need to arrange that the factotum smtp sees running from cron
 has the right keys to authenticate to gmail's smtpd.

that only applies if mail gets queued.

- erik




Re: [9fans] MacOS X drawterm doesn't toggle

2008-12-09 Thread Michaelian Ennis
On Fri, Oct 17, 2008 at 11:15 PM, andrey mirtchovski
[EMAIL PROTECTED] wrote:

 i've attached the screen.c to put in gui-osx. give it a try. other
 changes with the current version in cvs (except the bugfixes) are only
 cosmetic.

I notice your version has no ApplicationQuitEventHandler.  Does this
need to be merged in from the cvs version as well?

Ian



Re: [9fans] MacOS X drawterm doesn't toggle

2008-12-09 Thread Michaelian Ennis
On Tue, Dec 9, 2008 at 2:12 PM, andrey mirtchovski
[EMAIL PROTECTED] wrote:

 i suggest you use cvs since that's where all the changes go to.

I'd like to do that but in the CVS version command-f no longer toggles
the screen size.  And my patch to remove the ctrl-opt _is_ in the CVS,
which was after your fullscreen toggle patch.

Ian



Re: [9fans] MacOS X drawterm doesn't toggle

2008-12-09 Thread Michaelian Ennis
On Tue, Dec 9, 2008 at 2:37 PM, Michaelian Ennis
[EMAIL PROTECTED] wrote:
 Attached is my merge of the two versions.  Yes I am a monkey.  No I
 don't know what I am doing.  Now that said,  can you point me to why
 the application exits when I try to toggle full screen with command-F?


 Ian



screen.c
Description: Binary data


Re: [9fans] MacOS X drawterm doesn't toggle

2008-12-09 Thread Michaelian Ennis
Attached is my merge of the two versions.  Yes I am a monkey.  No I
don't know what I am doing.  Now that said,  can you point me to why
the application exits when I try to toggle full screen with command-F?


Ian



Re: [9fans] MacOS X drawterm doesn't toggle

2008-12-09 Thread andrey mirtchovski
i'll send you the latest i have in private.



Re: [9fans] MacOS X drawterm doesn't toggle

2008-12-09 Thread Uriel
Why not forget drawterm and use 9vx or inferno instead of wasting more
efforts on a dead end project?

uriel

On Tue, Dec 9, 2008 at 8:38 PM, Michaelian Ennis
[EMAIL PROTECTED] wrote:
 On Tue, Dec 9, 2008 at 2:37 PM, Michaelian Ennis
 [EMAIL PROTECTED] wrote:
 Attached is my merge of the two versions.  Yes I am a monkey.  No I
 don't know what I am doing.  Now that said,  can you point me to why
 the application exits when I try to toggle full screen with command-F?


 Ian





Re: [9fans] MacOS X drawterm doesn't toggle

2008-12-09 Thread Rodolfo kix Garcia

Uriel,

IMO drawterm is very good tool. I use it in my computer and in others, 
installation is not needed, not admin privilegies, ...


Saludos.

Uriel escribió:

Why not forget drawterm and use 9vx or inferno instead of wasting more
efforts on a dead end project?

uriel

On Tue, Dec 9, 2008 at 8:38 PM, Michaelian Ennis
[EMAIL PROTECTED] wrote:
  

On Tue, Dec 9, 2008 at 2:37 PM, Michaelian Ennis
[EMAIL PROTECTED] wrote:


Attached is my merge of the two versions.  Yes I am a monkey.  No I
don't know what I am doing.  Now that said,  can you point me to why
the application exits when I try to toggle full screen with command-F?


Ian

  


  





Re: [9fans] MacOS X drawterm doesn't toggle

2008-12-09 Thread erik quanstrom
On Tue Dec  9 14:51:52 EST 2008, [EMAIL PROTECTED] wrote:
 Why not forget drawterm and use 9vx or inferno instead of wasting more
 efforts on a dead end project?
 
 uriel
 

why not forget life on earth and go straight to our heavenly
reward instead of wasting more efforts on a dead end project?

- erik



Re: [9fans] MacOS X drawterm doesn't toggle

2008-12-09 Thread matt

I thought we were suppsoed to use Inferno instead of drawterm uriel ?

I can't install 9vx because my glibc is too low a version number but 
drawterm works just fine .

also a win
2.7Mdrawterm-linux


Why not forget drawterm and use 9vx or inferno instead of wasting more
efforts on a dead end project?

uriel






Re: [9fans] troff bibliography

2008-12-09 Thread Pietro Gagliardi

-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1

This is probably because the Heirloom tools are different from the  
Plan 9 tools. I think you should try compiling the Heirloom tools  
using ape/psh and see what happens.


-BEGIN PGP SIGNATURE-
Version: GnuPG v1.4.8 (Darwin)

iEYEARECAAYFAkk++AQACgkQuv7AVNQDs+ze/gCeLhTB0Lpap/0nNU7+UHebkm/1
qXYAn0U6MRhB0uEX37UOYoMwrsETbxPo
=+gAv
-END PGP SIGNATURE-



Re: [9fans] Fwd: Drawterm problems

2008-12-09 Thread Martín Ferrari
On Tue, Dec 9, 2008 at 05:12, Russ Cox [EMAIL PROTECTED] wrote:

 If you update from the CVS repository
 it should build and run just fine.
 If not, please let me know.

I have just uploaded to Debian drawterm with all the fixes.

Thanks a lot for your help!

-- 
Martín Ferrari



[9fans] hints on new decoders for video

2008-12-09 Thread Jeff Sickel
Does anyone know of new projects or ports that could get H.264  
decoding over to Plan 9 hosts?


I've got a project that needs to display sources form AVI wrapped H. 
264 files and would like to port it over to Plan 9, not just Linux/OSX.


-jas




[9fans] libevent for plan9

2008-12-09 Thread Fernan Bolando
Hi all

I am looking into porting some stuff that uses libevent.
http://monkey.org/~provos/libevent/

I was wondering if there is something else I can use to replace
libevent, so that I dont need to port it. Its probably to complex for
me anyway.

regards
fernan

-- 
http://www.fernski.com



[9fans] troff, refer, and diversions

2008-12-09 Thread Gregory Pavelcak
I've been writing a paper using -ms macros and refer and refer seems
to work as advertised. Recently I decided I wanted to get references in
endnotes instead of footnotes, so I added some very simple macros,
like FS/FE, around a diversion, thus:

.de XS
.ev2
.da XA
.br
..
.de XE
.br
.di
.ev
..

Aside from defining some number registers, the footnote macros
FJ and FK really don't seem to have much more to them than XS/XE,
and the XS/XE pair work as expected when I use them in the text.
However, when I replaced the FS/FE pairing under [2 in tmac.srefs,
the references are output in the text where I had the tags for refer
instead of being put into the diversion. I messed around with
variations on the macros much of the day and can't figure out what
I'm doing wrong. I can't see why FS and FE will work in the sref
macros, but XS/XE won't!

Thanks and Happy Holidays. I can't believe it's almost Christmas
again!

Greg



Re: [9fans] libevent for plan9

2008-12-09 Thread Roman Zhukov
You can just use blocking read/write calls in several threads.

On Wed, Dec 10, 2008 at 8:28 AM, Fernan Bolando [EMAIL PROTECTED] wrote:
 Hi all

 I am looking into porting some stuff that uses libevent.
 http://monkey.org/~provos/libevent/

 I was wondering if there is something else I can use to replace
 libevent, so that I dont need to port it. Its probably to complex for
 me anyway.

 regards
 fernan

 --
 http://www.fernski.com





-- 
Roma



Re: [9fans] libevent for plan9

2008-12-09 Thread Roman Zhukov
Sorry, I meant procs, of course. (see thread(2))
See also http://swtch.com/~rsc/thread/

 You can just use blocking read/write calls in several threads.



-- 
Roma



Re: [9fans] troff bibliography

2008-12-09 Thread cej

yep. i'll try just referallies, and we'll see. looks like it wouldn't make 
much problem, namely if i follow the style forsyth did the ape port...
thanks, regards,

peter, aka ++pac.


This is probably because the Heirloom tools are different from the  
Plan 9 tools. I think you should try compiling the Heirloom tools  
using ape/psh and see what happens.

winmail.dat

Re: [9fans] hints on new decoders for video

2008-12-09 Thread Skip Tavakkolian
i recently needed an mpeg4-wmv live transcoder and looked at FFmpeg
briefly.

because of wmv and ASF container requirements, i ended up writing one
that uses directshow filtergraphs (obviously on windows).

 Does anyone know of new projects or ports that could get H.264  
 decoding over to Plan 9 hosts?
 
 I've got a project that needs to display sources form AVI wrapped H. 
 264 files and would like to port it over to Plan 9, not just Linux/OSX.