src/protocols/zephyr/ZGetWGPort.c

Tue, 20 Jun 2006 08:17:49 +0000

author
Mark Doliner <markdoliner@pidgin.im>
date
Tue, 20 Jun 2006 08:17:49 +0000
changeset 13844
835b8f7b3d1d
parent 11105
842fa517e08c
permissions
-rw-r--r--

[gaim-migrate @ 16295]
Hopefully improve the typing notification code so it's a lot easier
to understand. This also creates a distinction between the signals
emitted when receiving GAIM_TYPED and GAIM_NOT_TYPING messages
(by adding a gaim-typed signal). And the gaim-not-typing signal
should work in all cases.

Most of this is stuff I changed last week during work, thanks to
Meebo

/* This file is part of the Project Athena Zephyr Notification System.
 * It contains source for the ZGetWGPort function.
 *
 *	Created by:	Robert French
 *
 *	Copyright (c) 1987 by the Massachusetts Institute of Technology.
 *	For copying and distribution information, see the file
 *	"mit-copyright.h". 
 */

#include "internal.h"

int ZGetWGPort()
{
    char *envptr, name[128];
    FILE *fp;
    int wgport;
#ifdef WIN32
    long int buffsize= 128;
    char tempdir[buffsize];
#endif	
    envptr = getenv("WGFILE");
    if (!envptr) {
#ifdef WIN32
         GetTempPath(buffsize,tempdir);
         GetTempFileName(tempdir,"wg.",0,name);
#else
	(void) sprintf(name, "/tmp/wg.%d", getuid());
#endif
	envptr = name;
    } 
    if (!(fp = fopen(envptr, "r")))
	return (-1);

    /* if fscanf fails, return -1 via wgport */
    if (fscanf(fp, "%d", &wgport) != 1)
	    wgport = -1;

    (void) fclose(fp);

    return (wgport);
}

mercurial