Skip to content

Send e-mail to peer user-identifier error #620

@marchrius

Description

@marchrius
...
mail:
  ...
  link_only: false
  allow_peer_email: true
  ...

With a Peer with a registered user

DEBUG GORM-SQL: SELECT * FROM `peer_addresses` WHERE `peer_addresses`.`peer_identifier` = "PEER_ID" rows=1 duration=97µs src=/build/internal/adapters/database.go:101
DEBUG GORM-SQL: SELECT * FROM `cidrs` WHERE `cidrs`.`cidr` = "VPN_IP/32" rows=1 duration=87.371µs src=/build/internal/adapters/database.go:101
DEBUG GORM-SQL: SELECT * FROM `users` WHERE identifier = "[email protected]" ORDER BY `users`.`identifier` LIMIT 1 rows=1 duration=206.149µs src=/build/internal/adapters/database.go:101
DEBUG GORM-SQL: SELECT * FROM `peers` WHERE `peers`.`identifier` = "PEER_ID" ORDER BY `peers`.`identifier` LIMIT 1 rows=1 duration=877.561µs src=/build/internal/adapters/database.go:101
DEBUG GORM-SQL: SELECT * FROM `user_webauthn_credentials` WHERE `user_webauthn_credentials`.`user_identifier` = "[email protected]" rows=0 duration=113.297µs src=/build/internal/adapters/database.go:101
DEBUG GORM-SQL: SELECT * FROM `users` WHERE `users`.`identifier` = "[email protected]" ORDER BY `users`.`identifier` LIMIT 1 rows=1 duration=376.354µs src=/build/internal/adapters/database.go:101
DEBUG peer email: using user email peer=PEER_ID [email protected]
DEBUG GORM-SQL: SELECT * FROM `peer_addresses` WHERE `peer_addresses`.`peer_identifier` = "PEER_ID" rows=1 duration=173.723µs src=/build/internal/adapters/database.go:101
DEBUG GORM-SQL: SELECT * FROM `cidrs` WHERE `cidrs`.`cidr` = "VPN_IP/32" rows=1 duration=85.242µs src=/build/internal/adapters/database.go:101
DEBUG GORM-SQL: SELECT * FROM `users` WHERE identifier = "[email protected]" ORDER BY `users`.`identifier` LIMIT 1 rows=1 duration=205.39µs src=/build/internal/adapters/database.go:101
DEBUG GORM-SQL: SELECT * FROM `peers` WHERE `peers`.`identifier` = "PEER_ID" ORDER BY `peers`.`identifier` LIMIT 1 rows=1 duration=918.765µs src=/build/internal/adapters/database.go:101
DEBUG GORM-SQL: SELECT * FROM `peer_addresses` WHERE `peer_addresses`.`peer_identifier` = "PEER_ID" rows=1 duration=99.241µs src=/build/internal/adapters/database.go:101
DEBUG GORM-SQL: SELECT * FROM `cidrs` WHERE `cidrs`.`cidr` = "VPN_IP/32" rows=1 duration=97.519µs src=/build/internal/adapters/database.go:101
DEBUG GORM-SQL: SELECT * FROM `users` WHERE identifier = "[email protected]" ORDER BY `users`.`identifier` LIMIT 1 rows=1 duration=207.297µs src=/build/internal/adapters/database.go:101
DEBUG GORM-SQL: SELECT * FROM `peers` WHERE `peers`.`identifier` = "PEER_ID" ORDER BY `peers`.`identifier` LIMIT 1 rows=1 duration=865.986µs src=/build/internal/adapters/database.go:101
DEBUG POST /api/v0/peer/config-mail protocol=HTTP/1.1 status=204 dataLength=0 duration=482.37015ms clientIP=MU_IP userAgent=Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36 referer=https://vpn.lunapartner.it/app/

On Web interface I have the notification

Peer Configuration sent
Email sent to linked user!

With a non-registered user with a valid e-mail address as user owner

DEBUG GORM-SQL: SELECT * FROM `peer_addresses` WHERE `peer_addresses`.`peer_identifier` = "PEER_ID" rows=1 duration=94.704µs src=/build/internal/adapters/database.go:101
DEBUG GORM-SQL: SELECT * FROM `cidrs` WHERE `cidrs`.`cidr` = "VPN_CLIENT_IP/32" rows=1 duration=95.778µs src=/build/internal/adapters/database.go:101
DEBUG GORM-SQL: SELECT * FROM `users` WHERE identifier = "[email protected]" ORDER BY `users`.`identifier` LIMIT 1 rows=0 duration=169.667µs src=/build/internal/adapters/database.go:101
DEBUG GORM-SQL: SELECT * FROM `peers` WHERE `peers`.`identifier` = "PEER_ID" ORDER BY `peers`.`identifier` LIMIT 1 rows=1 duration=873.82µs src=/build/internal/adapters/database.go:101
DEBUG GORM-SQL: SELECT * FROM `users` WHERE `users`.`identifier` = "[email protected]" ORDER BY `users`.`identifier` LIMIT 1 rows=0 duration=163.742µs src=/build/internal/adapters/database.go:101
DEBUG peer email: using user-identifier as email peer=PEER_ID [email protected]
DEBUG GORM-SQL: SELECT * FROM `peer_addresses` WHERE `peer_addresses`.`peer_identifier` = "PEER_ID" rows=1 duration=179.871µs src=/build/internal/adapters/database.go:101
DEBUG GORM-SQL: SELECT * FROM `cidrs` WHERE `cidrs`.`cidr` = "VPN_CLIENT_IP/32" rows=1 duration=87.537µs src=/build/internal/adapters/database.go:101
DEBUG GORM-SQL: SELECT * FROM `users` WHERE identifier = "[email protected]" ORDER BY `users`.`identifier` LIMIT 1 rows=0 duration=165.019µs src=/build/internal/adapters/database.go:101
DEBUG GORM-SQL: SELECT * FROM `peers` WHERE `peers`.`identifier` = "PEER_ID" ORDER BY `peers`.`identifier` LIMIT 1 rows=1 duration=923.95µs src=/build/internal/adapters/database.go:101
DEBUG GORM-SQL: SELECT * FROM `peer_addresses` WHERE `peer_addresses`.`peer_identifier` = "PEER_ID" rows=1 duration=93.89µs src=/build/internal/adapters/database.go:101
DEBUG GORM-SQL: SELECT * FROM `cidrs` WHERE `cidrs`.`cidr` = "VPN_CLIENT_IP/32" rows=1 duration=83.668µs src=/build/internal/adapters/database.go:101
DEBUG GORM-SQL: SELECT * FROM `users` WHERE identifier = "[email protected]" ORDER BY `users`.`identifier` LIMIT 1 rows=0 duration=161.686µs src=/build/internal/adapters/database.go:101
DEBUG GORM-SQL: SELECT * FROM `peers` WHERE `peers`.`identifier` = "PEER_ID" ORDER BY `peers`.`identifier` LIMIT 1 rows=1 duration=801.69µs src=/build/internal/adapters/database.go:101
DEBUG POST /api/v0/peer/config-mail protocol=HTTP/1.1 status=500 dataLength=179 duration=339.676869ms clientIP=MY_IP userAgent=Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36 referer=https://vpn.lunapartner.it/app/

On Web interface I have the notification

Failed to send mail with peer configuration!
Error: failed to send peer email for PEER_ID: failed to send mail: failed to send email: Mail Error: No recipient specified

Describe the bug

When sending the configuration through e-mail, If the user is not registered into the system the e-mail is not sent, even with a valid e-mail address into peer owner

Expected behavior

The expectations are the same as the registered user

Steps to reproduce

Create two peers, one with an address e-mail registered user and the other with an address e-mail not registered into the system

Screenshots

Additional context

  • Application version: v2.1.2
  • Install method: binary
PRETTY_NAME="Debian GNU/Linux 12 (bookworm)"
NAME="Debian GNU/Linux"
VERSION_ID="12"
VERSION="12 (bookworm)"
VERSION_CODENAME=bookworm
ID=debian
HOME_URL="https://www.debian.org/"
SUPPORT_URL="https://www.debian.org/support"
BUG_REPORT_URL="https://bugs.debian.org/"
# uname -a
Linux raspberrypi 6.6.74+rpt-rpi-2712 #1 SMP PREEMPT Debian 1:6.6.74-1+rpt1 (2025-01-27) aarch64 GNU/Linux

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions