Lines Matching refs:dl

199   struct datalink *dl;
220 for (dl = bundle->links; dl; dl = dl->next)
221 physical_DeleteQueue(dl->physical);
225 bundle_LinkAdded(struct bundle *bundle, struct datalink *dl)
227 bundle->phys_type.all |= dl->physical->type;
228 if (dl->state == DATALINK_OPEN)
229 bundle->phys_type.open |= dl->physical->type;
247 struct datalink *dl;
250 for (dl = bundle->links; dl; dl = dl->next)
251 bundle_LinkAdded(bundle, dl);
284 bundle_LinkAdded(bundle, p->dl);
329 struct datalink *dl;
337 for (dl = bundle->links; dl; dl = dl->next) {
338 if (fp == &dl->physical->link.lcp.fsm)
339 lost = dl;
340 else if (dl->state != DATALINK_CLOSED && dl->state != DATALINK_HANGUP)
372 struct datalink *dl;
377 for (dl = bundle->links; dl; dl = dl->next)
378 if (dl->state == DATALINK_OPEN)
379 datalink_Close(dl, CLOSE_STAYDOWN);
395 struct datalink *dl, *this_dl;
401 for (dl = bundle->links; dl; dl = dl->next) {
402 if (name && !strcasecmp(name, dl->name))
403 this_dl = dl;
404 if (name == NULL || this_dl == dl) {
407 datalink_DontHangup(dl);
410 datalink_StayDown(dl);
413 } else if (dl->state != DATALINK_CLOSED && dl->state != DATALINK_HANGUP)
433 for (dl = bundle->links; dl; dl = dl->next)
434 datalink_Close(dl, how);
444 struct datalink *dl;
446 for (dl = bundle->links; dl; dl = dl->next)
447 datalink_Down(dl, how);
454 struct datalink *dl;
462 for (nlinks = 0, dl = bundle->links; dl; dl = dl->next)
497 for (dl = bundle->links; dl; dl = dl->next)
498 result += descriptor_UpdateSet(&dl->desc, r, w, e, n);
514 struct datalink *dl;
516 for (dl = bundle->links; dl; dl = dl->next)
517 if (descriptor_IsSet(&dl->desc, fdset))
535 struct datalink *dl;
542 for (dl = bundle->links; dl; dl = dl->next)
543 if (descriptor_IsSet(&dl->desc, fdset))
544 descriptor_Read(&dl->desc, bundle, fdset);
647 struct datalink *dl;
655 for (dl = bundle->links; dl; dl = dl->next)
656 if (descriptor_IsSet(&dl->desc, fdset))
657 switch (descriptor_Write(&dl->desc, bundle, fdset)) {
659 datalink_ComeDown(dl, CLOSE_NORMAL);
910 struct datalink *dl;
929 dl = bundle->links;
930 while (dl)
931 dl = datalink_Destroy(dl);
946 bundle_LinkClosed(struct bundle *bundle, struct datalink *dl)
954 * NOTE: dl may not be in our list (bundle_SendDatalink()) !
960 log_SetTtyCommandMode(dl);
964 if (odl != dl && odl->state != DATALINK_CLOSED)
968 if (dl->physical->type != PHYS_AUTO) /* Not in -auto mode */
987 struct datalink *dl;
989 for (dl = bundle->links; dl; dl = dl->next)
990 if (name == NULL || !strcasecmp(dl->name, name)) {
991 if ((mask & dl->physical->type) &&
992 (dl->state == DATALINK_CLOSED ||
993 (force && dl->state == DATALINK_OPENING &&
994 dl->dial.timer.state == TIMER_RUNNING) ||
995 dl->state == DATALINK_READY)) {
996 timer_Stop(&dl->dial.timer); /* We're finished with this */
997 datalink_Up(dl, 1, 1);
1009 struct datalink *dl;
1012 for (dl = bundle->links; dl; dl = dl->next)
1013 if (!strcasecmp(dl->name, name))
1014 return dl;
1024 struct datalink *dl;
1029 for (dl = arg->bundle->links; dl; dl = dl->next) {
1030 octets = MAX(dl->physical->link.stats.total.in.OctetsPerSecond,
1031 dl->physical->link.stats.total.out.OctetsPerSecond);
1034 dl->name, mode2Nam(dl->physical->type), datalink_State(dl));
1035 if (dl->physical->link.stats.total.rolling && dl->state == DATALINK_OPEN)
1037 dl->mp.bandwidth ? dl->mp.bandwidth :
1038 physical_GetSpeed(dl->physical),
1272 bundle_DatalinkLinkout(struct bundle *bundle, struct datalink *dl)
1277 if (*dlp == dl) {
1278 *dlp = dl->next;
1279 dl->next = NULL;
1281 return dl;
1288 bundle_DatalinkLinkin(struct bundle *bundle, struct datalink *dl)
1295 *dlp = dl;
1296 dl->next = NULL;
1298 bundle_LinkAdded(bundle, dl);
1322 bundle_DatalinkClone(struct bundle *bundle, struct datalink *dl,
1330 bundle_DatalinkLinkin(bundle, datalink_Clone(dl, name));
1335 bundle_DatalinkRemove(struct bundle *bundle, struct datalink *dl)
1337 dl = bundle_DatalinkLinkout(bundle, dl);
1338 if (dl)
1339 datalink_Destroy(dl);
1386 struct datalink *dl;
1513 dl = iov2datalink(bundle, iov, &niov, sizeof iov / sizeof *iov, fd[0],
1515 if (dl) {
1520 datalink_Destroy(dl);
1525 bundle_DatalinkLinkin(bundle, dl);
1526 datalink_AuthOk(dl);
1527 bundle_CalculateBandwidth(dl->bundle);
1540 bundle_SendDatalink(struct datalink *dl, int s, struct sockaddr_un *sun)
1552 log_Printf(LogPHASE, "Transmitting datalink %s\n", dl->name);
1555 constlock = physical_LockedDevice(dl->physical);
1562 bundle_LinkClosed(dl->bundle, dl);
1563 bundle_DatalinkLinkout(dl->bundle, dl);
1571 fd[0] = datalink2iov(dl, iov, &niov, SCATTER_SEGMENTS, fd + 2, &nfd);
1654 newsid = Enabled(dl->bundle, OPT_KEEPSESSION) ||
1659 bundle_setsid(dl->bundle, got != -1);
1671 struct datalink *dl;
1676 for (dl = bundle->links; dl; dl = dl->next)
1677 if (!strcasecmp(dl->name, name))
1685 bundle_SetMode(struct bundle *bundle, struct datalink *dl, int mode)
1689 omode = dl->physical->type;
1701 if (!datalink_SetMode(dl, mode))
1726 struct datalink *dl;
1778 for (dl = bundle->links; dl; dl = dl->next)
1779 if (dl->state != DATALINK_CLOSED)
1780 physical_ChangedPid(dl->physical, pid);
1790 for (dl = bundle->links; dl; dl = dl->next)
1791 if (dl->state != DATALINK_CLOSED)
1792 physical_ChangedPid(dl->physical, pid);
1835 struct datalink *dl;
1838 for (dl = bundle->links; dl; dl = dl->next)
1839 if (result < dl->state)
1840 result = dl->state;
1848 struct datalink *dl;
1850 for (dl = bundle->links; dl; dl = dl->next)
1851 if (dl->physical->fd == fd) {
1852 datalink_Down(dl, CLOSE_NORMAL);
1883 struct datalink *dl;
1890 for (dl = bundle->links; dl; dl = dl->next) {
1891 overhead = ccp_MTUOverhead(&dl->physical->link.ccp);
1894 if (dl->state == DATALINK_OPEN) {
1895 if ((sp = dl->mp.bandwidth) == 0 &&
1896 (sp = physical_GetSpeed(dl->physical)) == 0)
1898 dl->name, dl->physical->name.full);
1902 bundle->iface->mtu = dl->physical->link.lcp.his_mru;
1942 struct datalink *dl, *choice, *otherlinkup;
1945 for (dl = bundle->links; dl; dl = dl->next)
1946 if (dl->physical->type == PHYS_AUTO) {
1947 if (dl->state == DATALINK_OPEN) {
1951 choice = dl;
1953 } else if (dl->state == DATALINK_CLOSED) {
1955 choice = dl;
1963 } else if (dl->state == DATALINK_OPEN && what == AUTO_DOWN)
1964 otherlinkup = dl;
1984 struct datalink *dl;
1988 for (autolink = opened = 0, dl = bundle->links; dl; dl = dl->next)
1989 if (dl->physical->type == PHYS_AUTO) {
1993 } else if (dl->state == DATALINK_OPEN) {