Linux vps-61133.fhnet.fr 4.9.0-19-amd64 #1 SMP Debian 4.9.320-2 (2022-06-30) x86_64
Apache/2.4.25 (Debian)
Server IP : 93.113.207.21 & Your IP : 216.73.216.112
Domains :
Cant Read [ /etc/named.conf ]
User : www-data
Terminal
Auto Root
Create File
Create Folder
Localroot Suggester
Backdoor Destroyer
Readme
/
usr /
src /
php-7.4.33 /
ext /
bcmath /
libbcmath /
src /
Delete
Unzip
Name
Size
Permission
Date
Action
.libs
[ DIR ]
drwxr-xr-x
2024-03-12 14:24
add.c
2.5
KB
-rw-rw-r--
2022-10-31 11:36
add.lo
325
B
-rw-r--r--
2024-03-12 14:24
add.o
71.13
KB
-rw-r--r--
2024-03-12 14:24
bcmath.h
4.63
KB
-rw-rw-r--
2022-10-31 11:36
compare.c
3.75
KB
-rw-rw-r--
2022-10-31 11:36
compare.lo
337
B
-rw-r--r--
2024-03-12 14:24
compare.o
70.95
KB
-rw-r--r--
2024-03-12 14:24
config.h
175
B
-rw-rw-r--
2022-10-31 11:36
debug.c
1.78
KB
-rw-rw-r--
2022-10-31 11:36
debug.lo
331
B
-rw-r--r--
2024-03-12 14:24
debug.o
71.29
KB
-rw-r--r--
2024-03-12 14:24
div.c
6.8
KB
-rw-rw-r--
2022-10-31 11:36
div.lo
325
B
-rw-r--r--
2024-03-12 14:24
div.o
79.02
KB
-rw-r--r--
2024-03-12 14:24
divmod.c
2.38
KB
-rw-rw-r--
2022-10-31 11:36
divmod.lo
334
B
-rw-r--r--
2024-03-12 14:24
divmod.o
72.11
KB
-rw-r--r--
2024-03-12 14:24
doaddsub.c
5.75
KB
-rw-rw-r--
2022-10-31 11:36
doaddsub.lo
340
B
-rw-r--r--
2024-03-12 14:24
doaddsub.o
75.63
KB
-rw-r--r--
2024-03-12 14:24
init.c
3.06
KB
-rw-rw-r--
2022-10-31 11:36
init.lo
328
B
-rw-r--r--
2024-03-12 14:24
init.o
73.13
KB
-rw-r--r--
2024-03-12 14:24
int2num.c
2.05
KB
-rw-rw-r--
2022-10-31 11:36
int2num.lo
337
B
-rw-r--r--
2024-03-12 14:24
int2num.o
70.88
KB
-rw-r--r--
2024-03-12 14:24
nearzero.c
1.93
KB
-rw-rw-r--
2022-10-31 11:36
nearzero.lo
340
B
-rw-r--r--
2024-03-12 14:24
nearzero.o
69.63
KB
-rw-r--r--
2024-03-12 14:24
neg.c
1.48
KB
-rw-rw-r--
2022-10-31 11:36
neg.lo
325
B
-rw-r--r--
2024-03-12 14:24
neg.o
68.05
KB
-rw-r--r--
2024-03-12 14:24
num2long.c
2.09
KB
-rw-rw-r--
2022-10-31 11:36
num2long.lo
340
B
-rw-r--r--
2024-03-12 14:24
num2long.o
69.23
KB
-rw-r--r--
2024-03-12 14:24
num2str.c
2.41
KB
-rw-rw-r--
2022-10-31 11:36
num2str.lo
337
B
-rw-r--r--
2024-03-12 14:24
num2str.o
71.31
KB
-rw-r--r--
2024-03-12 14:24
outofmem.c
1.43
KB
-rw-rw-r--
2022-10-31 11:36
outofmem.lo
340
B
-rw-r--r--
2024-03-12 14:24
outofmem.o
68.59
KB
-rw-r--r--
2024-03-12 14:24
output.c
5.48
KB
-rw-rw-r--
2022-10-31 11:36
output.lo
334
B
-rw-r--r--
2024-03-12 14:24
output.o
78.58
KB
-rw-r--r--
2024-03-12 14:24
private.h
1.49
KB
-rw-rw-r--
2022-10-31 11:36
raise.c
3.36
KB
-rw-rw-r--
2022-10-31 11:36
raise.lo
331
B
-rw-r--r--
2024-03-12 14:24
raise.o
72.98
KB
-rw-r--r--
2024-03-12 14:24
raisemod.c
3.63
KB
-rw-rw-r--
2022-10-31 11:36
raisemod.lo
340
B
-rw-r--r--
2024-03-12 14:24
raisemod.o
77.42
KB
-rw-r--r--
2024-03-12 14:24
recmul.c
7.37
KB
-rw-rw-r--
2022-10-31 11:36
recmul.lo
334
B
-rw-r--r--
2024-03-12 14:24
recmul.o
85.43
KB
-rw-r--r--
2024-03-12 14:24
rmzero.c
1.73
KB
-rw-rw-r--
2022-10-31 11:36
rmzero.lo
334
B
-rw-r--r--
2024-03-12 14:24
rmzero.o
68.13
KB
-rw-r--r--
2024-03-12 14:24
sqrt.c
3.36
KB
-rw-rw-r--
2022-10-31 11:36
sqrt.lo
328
B
-rw-r--r--
2024-03-12 14:24
sqrt.o
74
KB
-rw-r--r--
2024-03-12 14:24
str2num.c
2.93
KB
-rw-rw-r--
2022-10-31 11:36
str2num.lo
337
B
-rw-r--r--
2024-03-12 14:24
str2num.o
71.71
KB
-rw-r--r--
2024-03-12 14:24
sub.c
2.54
KB
-rw-rw-r--
2022-10-31 11:36
sub.lo
325
B
-rw-r--r--
2024-03-12 14:24
sub.o
71.09
KB
-rw-r--r--
2024-03-12 14:24
zero.c
1.83
KB
-rw-rw-r--
2022-10-31 11:36
zero.lo
328
B
-rw-r--r--
2024-03-12 14:24
zero.o
69.83
KB
-rw-r--r--
2024-03-12 14:24
Save
Rename
/* raisemod.c: bcmath library file. */ /* Copyright (C) 1991, 1992, 1993, 1994, 1997 Free Software Foundation, Inc. Copyright (C) 2000 Philip A. Nelson This library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details. (LICENSE) You should have received a copy of the GNU Lesser General Public License along with this library; if not, write to: The Free Software Foundation, Inc. 59 Temple Place, Suite 330 Boston, MA 02111-1307 USA. You may contact the author by: e-mail: philnelson@acm.org us-mail: Philip A. Nelson Computer Science Department, 9062 Western Washington University Bellingham, WA 98226-9062 *************************************************************************/ #include <config.h> #include <stdio.h> #include <stdlib.h> #include <ctype.h> #include <stdarg.h> #include "bcmath.h" #include "private.h" /* Truncate a number to zero scale. To avoid sharing issues (refcount and shared n_value) the number is copied, this copy is truncated, and the original number is "freed". */ static void _bc_truncate (bc_num *num) { bc_num temp; temp = bc_new_num ((*num)->n_len, 0); temp->n_sign = (*num)->n_sign; memcpy (temp->n_value, (*num)->n_value, (*num)->n_len); bc_free_num (num); *num = temp; } /* Raise BASE to the EXPO power, reduced modulo MOD. The result is placed in RESULT. If a EXPO is not an integer, only the integer part is used. */ int bc_raisemod (bc_num base, bc_num expo, bc_num mod, bc_num *result, int scale) { bc_num power, exponent, modulus, parity, temp; int rscale; /* Check for correct numbers. */ if (bc_is_zero(mod)) return -1; if (bc_is_neg(expo)) return -1; /* Set initial values. */ power = bc_copy_num (base); exponent = bc_copy_num (expo); modulus = bc_copy_num (mod); temp = bc_copy_num (BCG(_one_)); bc_init_num(&parity); /* Check the base for scale digits. */ if (power->n_scale != 0) { php_error_docref (NULL, E_WARNING, "non-zero scale in base"); _bc_truncate (&power); } /* Check the exponent for scale digits. */ if (exponent->n_scale != 0) { php_error_docref (NULL, E_WARNING, "non-zero scale in exponent"); _bc_truncate (&exponent); } /* Check the modulus for scale digits. */ if (modulus->n_scale != 0) { php_error_docref (NULL, E_WARNING, "non-zero scale in modulus"); _bc_truncate (&modulus); } /* Do the calculation. */ rscale = MAX(scale, power->n_scale); if ( !bc_compare(modulus, BCG(_one_)) ) { bc_free_num (&temp); temp = bc_new_num (1, scale); } else { while ( !bc_is_zero(exponent) ) { (void) bc_divmod (exponent, BCG(_two_), &exponent, &parity, 0); if ( !bc_is_zero(parity) ) { bc_multiply (temp, power, &temp, rscale); (void) bc_modulo (temp, modulus, &temp, scale); } bc_multiply (power, power, &power, rscale); (void) bc_modulo (power, modulus, &power, scale); } } /* Assign the value. */ bc_free_num (&power); bc_free_num (&exponent); bc_free_num (&modulus); bc_free_num (result); bc_free_num (&parity); *result = temp; return 0; /* Everything is OK. */ }