smb2 0.18.0

Pure-Rust SMB2/3 client library with pipelined I/O
Documentation
# Every port publishes to 127.0.0.1, not 0.0.0.0. Without the `${SMB_BIND_ADDR}` prefix, Docker binds
# all interfaces, which puts 15 Samba servers (several with guest shares, one writable) on the LAN and
# the tailnet of whoever runs the tests. The fixtures hold no real data, but an unauthenticated smbd
# reachable from the local network is surface nobody asked for, and these containers routinely outlive
# the test run that started them.
#
# Set SMB_BIND_ADDR=0.0.0.0 to reach the fixtures from another machine or a NAT'd VM (a guest VM hits
# the host through a gateway IP, not loopback, so localhost binding is invisible to it).
#
# Consumers that vendor this file (cmdr) must change the bind address HERE and re-vendor: Compose
# *concatenates* `ports` across override files rather than replacing them, so a second publish in an
# override collides on the host port instead of overriding it.
services:
  smb-consumer-guest:
    build:
      context: smb-consumer-guest
    ports:
      - "${SMB_BIND_ADDR:-127.0.0.1}:${SMB_CONSUMER_GUEST_PORT:-10480}:445"

  smb-consumer-auth:
    build:
      context: smb-consumer-auth
    ports:
      - "${SMB_BIND_ADDR:-127.0.0.1}:${SMB_CONSUMER_AUTH_PORT:-10481}:445"

  smb-consumer-both:
    build:
      context: smb-consumer-both
    ports:
      - "${SMB_BIND_ADDR:-127.0.0.1}:${SMB_CONSUMER_BOTH_PORT:-10482}:445"

  smb-consumer-50shares:
    build:
      context: smb-consumer-50shares
    ports:
      - "${SMB_BIND_ADDR:-127.0.0.1}:${SMB_CONSUMER_50SHARES_PORT:-10483}:445"

  smb-consumer-unicode:
    build:
      context: smb-consumer-unicode
    ports:
      - "${SMB_BIND_ADDR:-127.0.0.1}:${SMB_CONSUMER_UNICODE_PORT:-10484}:445"

  smb-consumer-longnames:
    build:
      context: smb-consumer-longnames
    ports:
      - "${SMB_BIND_ADDR:-127.0.0.1}:${SMB_CONSUMER_LONGNAMES_PORT:-10485}:445"

  smb-consumer-deepnest:
    build:
      context: smb-consumer-deepnest
    ports:
      - "${SMB_BIND_ADDR:-127.0.0.1}:${SMB_CONSUMER_DEEPNEST_PORT:-10486}:445"

  smb-consumer-manyfiles:
    build:
      context: smb-consumer-manyfiles
    ports:
      - "${SMB_BIND_ADDR:-127.0.0.1}:${SMB_CONSUMER_MANYFILES_PORT:-10487}:445"

  smb-consumer-readonly:
    build:
      context: smb-consumer-readonly
    ports:
      - "${SMB_BIND_ADDR:-127.0.0.1}:${SMB_CONSUMER_READONLY_PORT:-10488}:445"

  smb-consumer-windows:
    build:
      context: smb-consumer-windows
    ports:
      - "${SMB_BIND_ADDR:-127.0.0.1}:${SMB_CONSUMER_WINDOWS_PORT:-10489}:445"

  smb-consumer-synology:
    build:
      context: smb-consumer-synology
    ports:
      - "${SMB_BIND_ADDR:-127.0.0.1}:${SMB_CONSUMER_SYNOLOGY_PORT:-10490}:445"

  smb-consumer-linux:
    build:
      context: smb-consumer-linux
    ports:
      - "${SMB_BIND_ADDR:-127.0.0.1}:${SMB_CONSUMER_LINUX_PORT:-10491}:445"

  smb-consumer-flaky:
    build:
      context: smb-consumer-flaky
    ports:
      - "${SMB_BIND_ADDR:-127.0.0.1}:${SMB_CONSUMER_FLAKY_PORT:-10492}:445"

  smb-consumer-slow:
    build:
      context: smb-consumer-slow
    ports:
      - "${SMB_BIND_ADDR:-127.0.0.1}:${SMB_CONSUMER_SLOW_PORT:-10493}:445"
    cap_add:
      - NET_ADMIN

  smb-consumer-maxreadsize:
    build:
      context: smb-consumer-maxreadsize
    ports:
      - "${SMB_BIND_ADDR:-127.0.0.1}:${SMB_CONSUMER_MAXREADSIZE_PORT:-10494}:445"