~ubuntu-branches/ubuntu/wily/bluez/wily

« back to all changes in this revision

Viewing changes to test/rctest.c

ImportĀ upstreamĀ versionĀ 4.81

Show diffs side-by-side

added added

removed removed

Lines of Context:
3
3
 *  BlueZ - Bluetooth protocol stack for Linux
4
4
 *
5
5
 *  Copyright (C) 2002-2003  Maxim Krasnyansky <maxk@qualcomm.com>
6
 
 *  Copyright (C) 2002-2009  Marcel Holtmann <marcel@holtmann.org>
 
6
 *  Copyright (C) 2002-2010  Marcel Holtmann <marcel@holtmann.org>
7
7
 *
8
8
 *
9
9
 *  This program is free software; you can redistribute it and/or modify
260
260
        }
261
261
 
262
262
        /* Bind to local address */
 
263
        memset(&addr, 0, sizeof(addr));
263
264
        addr.rc_family = AF_BLUETOOTH;
264
265
        bacpy(&addr.rc_bdaddr, &bdaddr);
265
266
        addr.rc_channel = channel;
435
436
                                if (r < 0)
436
437
                                        syslog(LOG_ERR, "Read failed: %s (%d)",
437
438
                                                        strerror(errno), errno);
438
 
                                return; 
 
439
                                return;
439
440
                        }
440
441
 
441
442
                        if (timestamp) {
458
459
                                seq = sq;
459
460
                        }
460
461
                        seq++;
461
 
                        
 
462
 
462
463
                        /* Check length */
463
464
                        l = btohs(*(uint16_t *) (buf + 4));
464
465
                        if (r != l) {
465
466
                                syslog(LOG_INFO, "size missmatch: %d -> %d", r, l);
466
467
                                continue;
467
468
                        }
468
 
                        
469
 
                        /* Verify data */       
 
469
 
 
470
                        /* Verify data */
470
471
                        for (i = 6; i < r; i++) {
471
472
                                if (buf[i] != 0x7f)
472
473
                                        syslog(LOG_INFO, "data missmatch: byte %d 0x%2.2x", i, buf[i]);
510
511
                *(uint32_t *) buf = htobl(seq);
511
512
                *(uint16_t *) (buf + 4) = htobs(data_size);
512
513
                seq++;
513
 
                
 
514
 
514
515
                if (send(sk, buf, data_size, 0) <= 0) {
515
516
                        syslog(LOG_ERR, "Send failed: %s (%d)",
516
517
                                                        strerror(errno), errno);
580
581
        printf("Options:\n"
581
582
                "\t[-b bytes] [-i device] [-P channel] [-U uuid]\n"
582
583
                "\t[-L seconds] enabled SO_LINGER option\n"
583
 
                "\t[-F seconds] enable deferred setup\n"
 
584
                "\t[-W seconds] enable deferred setup\n"
584
585
                "\t[-B filename] use data packets from file\n"
585
586
                "\t[-N num] number of frames to send\n"
586
587
                "\t[-C num] send num frames before delay (default = 1)\n"
599
600
 
600
601
        bacpy(&bdaddr, BDADDR_ANY);
601
602
 
602
 
        while ((opt=getopt(argc,argv,"rdscuwmnb:i:P:U:B:N:MAESL:F:C:D:T")) != EOF) {
 
603
        while ((opt=getopt(argc,argv,"rdscuwmnb:i:P:U:B:N:MAESL:W:C:D:T")) != EOF) {
603
604
                switch (opt) {
604
605
                case 'r':
605
606
                        mode = RECV;
682
683
                        linger = atoi(optarg);
683
684
                        break;
684
685
 
685
 
                case 'F':
 
686
                case 'W':
686
687
                        defer_setup = atoi(optarg);
687
688
                        break;
688
689