Exemplo n.º 1
0
/* ARGSUSED */
int
#ifndef ANSI_PROTOTYPES
main(argc, argv, envp)
    int argc;
    char *argv[];
    char *envp[];
#else /* ANSI_PROTOTYPES */
main(int argc, char **argv, char **envp)
#endif /* ANSI_PROTOTYPES */
{
    int retval;

    dirty = 0;

    retval = -util_process_arglist(argv + 1, do_rmdir);

    if (dirty)
	util_dirtydir(".");

    client_done();

    return retval;
}
Exemplo n.º 2
0
//
// Called by the obex-layer when some event occurs.
//
void obex_event(obex_t *handle, obex_object_t *object, int mode, int event, int obex_cmd, int obex_rsp)
{
    switch (event)	{
    case OBEX_EV_PROGRESS:
        printf("Made some progress...\n");
        break;

    case OBEX_EV_ABORT:
        printf("Request aborted!\n");
        break;

    case OBEX_EV_REQDONE:
        if(mode == OBEX_MODE_CLIENT) {
            client_done(handle, object, obex_cmd, obex_rsp);
        }
        else	{
            server_done(handle, object, obex_cmd, obex_rsp);
        }
        break;
    case OBEX_EV_REQHINT:
        /* Accept any command. Not rellay good, but this is a test-program :) */
        OBEX_ObjectSetRsp(object, OBEX_RSP_CONTINUE, OBEX_RSP_SUCCESS);
        break;

    case OBEX_EV_REQ:
        server_request(handle, object, event, obex_cmd);
        break;

    case OBEX_EV_LINKERR:
        OBEX_TransportDisconnect(handle);
        printf("Link broken!\n");
        break;

    case OBEX_EV_STREAMEMPTY:
        fillstream(handle, object);
        break;

    default:
        printf("Unknown event %02x!\n", event);
        break;
    }
}
Exemplo n.º 3
0
/**
	Handle incoming event from OpenOBEX.
 */
static void cli_obex_event(obex_t *handle, obex_object_t *object, int UNUSED(mode), int event, int obex_cmd, int obex_rsp)
{
	/*@temp@*/ obexftp_client_t *cli;

	cli = OBEX_GetUserData(handle);

	switch (event)	{
	case OBEX_EV_PROGRESS:
		cli->infocb(OBEXFTP_EV_PROGRESS, "", 0, cli->infocb_data);
		break;
	case OBEX_EV_REQDONE:
		cli->finished = TRUE;
		if(obex_rsp == OBEX_RSP_SUCCESS)
			cli->success = TRUE;
		else {
			cli->success = FALSE;
			DEBUG(2, "%s() OBEX_EV_REQDONE: obex_rsp=%02x\n", __func__, obex_rsp);
		}
		cli->obex_rsp = obex_rsp;
		client_done(handle, object, obex_cmd, obex_rsp);
		break;
	
	case OBEX_EV_LINKERR:
		cli->finished = TRUE;
		cli->success = FALSE;
		DEBUG(2, "%s() OBEX_EV_LINKERR\n", __func__);
		break;
	
	case OBEX_EV_STREAMEMPTY:
		if (cli->out_data)
			(void) cli_fillstream_from_memory(cli, object);
		else
			(void) cli_fillstream_from_file(cli, object);
		break;
	
	default:
		DEBUG(1, "%s() Unknown event %d\n", __func__, event);
		break;
	}
}
Exemplo n.º 4
0
static void read_handler(ae_event_loop *el, int fd, void *priv, int mask) {
    client *c = (client *)priv;
    int nread;
    char buffer[4096];

    nread = read(fd, buffer, 4096);
    if (nread == -1) {
        if (errno == EAGAIN) {
            return;
        }
        fprintf(stderr, "Error: %s\n", strerror(errno));
        exit(1);
    } else if (nread == 0) {
        fprintf(stderr, "Error: %s\n", "Server close connection.");
        exit(1);
    }
    
    c->read += nread;
    if (c->read == sdslen(c->obuf)) {
        c->latency = ustime() - c->start;
        ++conf.requests_finished;
        client_done(c);
    }
}