Flexd and uronode

I had some problems getting the flexnet destinations in uronode. Xnet node is running with various flexnet links. Now I also want uronode to know these flexnet destinations. There appears to be a small secret in the “prompt” that flexd expects. I had a prompt “pi1lap ==>” That is not what flexd expected. Flexd expects a prompt “=>” So now I had to adjust the Xnet prompt to the expectations of flexd. (Tnx Brian n1uro for the hint)
Maybe the “pi1lap =>” prompt will work, I have to test that

There is also something with the buffer size of flexd. See the README.flexd in the source dir.

root@gw:/etc/ax25# cat /usr/local/src/uronode-2.8/README.flexd
If you find that your flexd isn't properly working, scroll down to line 120
where it says:
char  buffer[256], port[14], path[AX25_MAX_DIGIS*10]
and adjust the buffer per your neighbor's screens. The formula is:
2 data frames: 256
3 data frames: 512
4 data frames: 1024

Okay so how muts frames i have, let’s have a look

[3] fm PI1LAP-15 to PI1LAP ctl SABM+
[3] fm PI1LAP to PI1LAP-15 ctl UA-
[3] fm PI1LAP to PI1LAP-15 ctl I00^ pid F0 (211)
(X)net V1.39 Node PI1LAP

That are 2 frames. I had to set the buffer size to 256 and recompile flexd.c

int download_dest(char *gateway, char *fname)
{
  FILE *tmp;
  char buffer[256], port[14], path[AX25_MAX_DIGIS*10];

Also i have made a change to line 277. Also change to 256 buffer size

    if (FD_ISSET(s, &read_fd)) {
//      if ((n = read(s, buffer, 512)) == -1) break;
	if ((n = read(s, buffer, 256)) == -1) break;

Setup flexd.conf

# /etc/ax25/flexd.conf
# see man flexd.conf

# The callsign-ssid you wish to poll your flex neighbor with:

MyCall          pi1lap-15

# How often do we poll our flex neighbor (in seconds):

PollInterval    300

# The FlexNet node we're to poll:

FlexGate        pi1lap

The prompt for Xnet

root@gw:/etc/ax25# grep prompt /usr/local/xnet/AUTOEXEC.NET
my prompt =>

Let’s give it a try.

[3] fm PI1LAP-15 to PI1LAP ctl SABM+
[3] fm PI1LAP to PI1LAP-15 ctl UA-
[3] fm PI1LAP to PI1LAP-15 ctl I00^ pid F0 (211)
(X)net V1.39 Node PI1LAP

Lap = F6fbb bbs PI8LAP
Jnos = Jnos 2.0k.1 PD2LT
Dx = Cluster Dxspider PI1LAP-4
Uro = Uronode PI1LAP-15

=>
[3] fm PI1LAP-15 to PI1LAP ctl I10^ pid F0 (2)
d
[3] fm PI1LAP to PI1LAP-15 ctl I11^ pid F0 (236)

BBS     0-0     33  CE8FGC  0-0     33  CX2SA   0-0     34  CX2SA   5-5      5
DB0ERF  0-12     4  DB0ERF 13-13     3  DB0ERF 14-14    30  DB0ERF 15-15    30
DB0RES  0-9      5  DB0RES 10-10     4  DB0ZWI  0-1      6  DB0ZWI  3-3
[3] fm PI1LAP to PI1LAP-15 ctl I12^ pid F0 (236)
5
DB0ZWI  4-15     4  DH4LAR  1-1      4  DL0HBS  7-7     30  F1ZYS   8-8     10
F3KT    0-10     4  F4DUR   7-7      5  F4DUR   8-8     39  F5ZFC   0-7    132
F8KHI   3-3     39  F8KHI   7-7     39  FGCBBS  0-0     33  HB9CSR  1-1
[3] fm PI1LAP to PI1LAP-15 ctl I13^ pid F0 (236)
40
HB9CSR  3-3      5  HB9CSR  8-8     40  HB9ON   1-1     39  HB9ON   8-8     34
HB9ON   9-9     34  HB9ON  10-10     4  HB9ON  14-14     5  HG0PLA  0-0      5
HG6PGA  0-0    109  HG8IT   0-0     35  HG8LXL  0-0     31  HG8PCS  0-0

Uronode

pd2lt@uro.pd2lt.ampr.org-IPv6: d
FlexNet Destinations:
BBS     0-0     34  CE8FGC  0-0     34  CX2SA   0-0     35  CX2SA   5-5      5
DB0ERF  0-12     5  DB0ERF  13-13    4  DB0ERF  14-14   31  DB0ERF  15-15   31
DB0RES  0-9      6  DB0RES  10-10    5  DB0ZWI  0-1      7  DB0ZWI  3-3      6
DB0ZWI  4-15     5  DH4LAR  1-1      5  DL0HBS  7-7     31  F1ZYS   8-8      6
F3KT    0-10     4  F4DUR   7-7      5  F4DUR   8-8     39  F5ZFC   0-7    116
F8KHI   3-3     39  F8KHI   7-7     39  FGCBBS  0-0     34  HB9CSR  1-1     41

Yes, all looks okay.

The flexnet destinations are saved in “/usr/local/var/ax25/flex” on a debian wheezy system.